{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "ce94cc8f-eb8f-4373-a144-f98eb61a53fc",
   "metadata": {},
   "outputs": [],
   "source": [
    "!pip install tiktoken lxml sentencepiece llama-index datasets sentence_transformers langchain "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "67e9153d-426d-4861-bfff-c3d170501ff7",
   "metadata": {},
   "outputs": [],
   "source": [
    "!pip install"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "bd6225ba-3765-4234-93ed-ca3f1d826359",
   "metadata": {},
   "source": [
    "# Naive RAG"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "a4261b13-d067-40c0-8c65-2f81a6620e26",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "                                              review sentiment\n",
      "0  One of the other reviewers has mentioned that ...  positive\n",
      "1  A wonderful little production. <br /><br />The...  positive\n",
      "2  I thought this was a wonderful way to spend ti...  positive\n",
      "3  Basically there's a family where a little boy ...  negative\n",
      "4  Petter Mattei's \"Love in the Time of Money\" is...  positive\n"
     ]
    }
   ],
   "source": [
    "import pandas as pd\n",
    "from sklearn.feature_extraction.text import TfidfVectorizer\n",
    "from sklearn.metrics.pairwise import cosine_similarity\n",
    "\n",
    "#this for unzip and read the file\n",
    "try:\n",
    "    df=pd.read_csv(\"IMDB Dataset.csv\")\n",
    "except:\n",
    "    !wget https://github.com/SalvatoreRa/tutorial/blob/main/datasets/IMDB.zip?raw=true\n",
    "    !unzip IMDB.zip?raw=true\n",
    "\n",
    "# Load the dataset\n",
    "df = pd.read_csv(\"IMDB Dataset.csv\")\n",
    "df = df.iloc[:5000,:]\n",
    "\n",
    "# Display the first few rows of the dataframe\n",
    "print(df.head())\n",
    "\n",
    "# Initialize the TfidfVectorizer\n",
    "tfidf_vectorizer = TfidfVectorizer(max_features=1000)\n",
    "\n",
    "# Fit and transform \n",
    "tfidf_matrix = tfidf_vectorizer.fit_transform(df['review'])\n",
    "\n",
    "# Convert the TF-IDF matrix to a DataFrame\n",
    "tfidf_df = pd.DataFrame(tfidf_matrix.toarray(), columns=tfidf_vectorizer.get_feature_names_out())\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "0ee04893-0672-4022-9a07-f5ccd624e1ea",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>review</th>\n",
       "      <th>sentiment</th>\n",
       "      <th>cosine_similarity</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>If you want to waste a small portion of your l...</td>\n",
       "      <td>negative</td>\n",
       "      <td>0.589198</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>This movie is god awful. Not one quality to th...</td>\n",
       "      <td>negative</td>\n",
       "      <td>0.483662</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>Now, I'm a big fan of Zombie movies. I admit Z...</td>\n",
       "      <td>negative</td>\n",
       "      <td>0.463848</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>\"Revolt of the Zombies\" proves that having the...</td>\n",
       "      <td>negative</td>\n",
       "      <td>0.360548</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>I haven't had a chance to view the previous fi...</td>\n",
       "      <td>negative</td>\n",
       "      <td>0.343682</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4995</th>\n",
       "      <td>OK, so it owes Pulp Fiction, but in my opinion...</td>\n",
       "      <td>positive</td>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4996</th>\n",
       "      <td>I don't know why some people criticise that sh...</td>\n",
       "      <td>positive</td>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4997</th>\n",
       "      <td>Jeff Lieberman's \"Just Before Dawn\" is definit...</td>\n",
       "      <td>positive</td>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4998</th>\n",
       "      <td>A man and his wife are not getting along becau...</td>\n",
       "      <td>positive</td>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4999</th>\n",
       "      <td>I just love this film it totally rocks! Nicola...</td>\n",
       "      <td>positive</td>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5000 rows × 3 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                                                 review sentiment  \\\n",
       "0     If you want to waste a small portion of your l...  negative   \n",
       "1     This movie is god awful. Not one quality to th...  negative   \n",
       "2     Now, I'm a big fan of Zombie movies. I admit Z...  negative   \n",
       "3     \"Revolt of the Zombies\" proves that having the...  negative   \n",
       "4     I haven't had a chance to view the previous fi...  negative   \n",
       "...                                                 ...       ...   \n",
       "4995  OK, so it owes Pulp Fiction, but in my opinion...  positive   \n",
       "4996  I don't know why some people criticise that sh...  positive   \n",
       "4997  Jeff Lieberman's \"Just Before Dawn\" is definit...  positive   \n",
       "4998  A man and his wife are not getting along becau...  positive   \n",
       "4999  I just love this film it totally rocks! Nicola...  positive   \n",
       "\n",
       "      cosine_similarity  \n",
       "0              0.589198  \n",
       "1              0.483662  \n",
       "2              0.463848  \n",
       "3              0.360548  \n",
       "4              0.343682  \n",
       "...                 ...  \n",
       "4995           0.000000  \n",
       "4996           0.000000  \n",
       "4997           0.000000  \n",
       "4998           0.000000  \n",
       "4999           0.000000  \n",
       "\n",
       "[5000 rows x 3 columns]"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Define the query\n",
    "query = \"I want to watch a movie about zombie\"\n",
    "\n",
    "# Transform the query using the same TF-IDF vectorizer\n",
    "query_tfidf = tfidf_vectorizer.transform([query])\n",
    "\n",
    "# Calculate cosine similarity between the query and all documents\n",
    "cosine_similarities = cosine_similarity(query_tfidf, tfidf_matrix).flatten()\n",
    "\n",
    "df['cosine_similarity'] = cosine_similarities\n",
    "\n",
    "reranked_df = df.sort_values(by='cosine_similarity', \n",
    "                             ascending=False).reset_index(drop=True)\n",
    "\n",
    "reranked_df"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "1af1ffc9-ab08-46c6-959e-ad5e34e244a9",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'If you want to waste a small portion of your life sit in front of this predictable zombie film. It fails at the first post by not being scary OR funny. It is a dull grey movie that I guess went straight to video. Hammy and tongue in cheek acting leave a sour taste in the mouth. If you want to watch a poor but still watchable recent zombie film watch Diary of the Dead. Poor special effects, school level script. Zombie films work if they have a moral point or even a political point . This movie has nothing, there is no worthy point that zombification underscores. This is as thrilling and convincing as a Republican Convention, no sorry watching the Republican Convention would be a better example of a Zombie movie.'"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#give a look in detail to the first example\n",
    "reranked_df.iloc[0,0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "0065f1bc-c3ef-4dcf-8a74-2db402e9cab7",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "image/png": "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//u/SktL08yZM3X11Vdr8eLFSk9P16efftroNdXV1brqqqu0bds23X777Ro/fryKioqUmZmprVu3WuZWVVUpPT1d2dnZCg0N1bRp0/TTn/5U8fHxevzxx1VbW6tOnTppwoQJ2r59uzZs2NBovdzcXJWWliorK0vt2rW7IJ8bAHB23OYHALjgPv744yav7owZM8b3z++++67ee+89jR492jLnkUce0dq1a/Xggw9q7ty5crlckr6+cjNq1Cjdd999Gj9+vBITEyVJDzzwgMrKyvQ///M/+uUvf+l7n+eee0533333t/4sHo9HEyZMkNfr1caNG5Wamuo7l5+fr5EjR2rmzJlavny55XVbtmzR9OnT9cwzzygk5Ov/dzlq1ChNmTJFzz77rBYsWOCbO336dO3cuVO/+MUv9Oijj1rep7KyUh06dJAk3X333XrhhRf0/PPP68orr7TMW7hwoSTpzjvv/NafGQDQTAYAgAtk7969RtIZf373u9+ZF1980Ugy3/ve9xq9vr6+3nTp0sX07NnTeL3eRufffPNNI8k888wzxhhj6urqTGRkpImNjTXHjx9v9F69e/c2ksyaNWt846fXf/HFFxu9/5o1a4wk8/DDD/vG/vGPfxhJ5pFHHmnyM48fP96EhISYw4cP+8Ykmfbt25sjR45Y5no8HhMWFmYGDx7sGysvLzcul8v07NnTnDx5ssk1vik1NdW0b9/esl5VVZWJiIgwQ4cOPefrAQAXDlemAAAXXGZmpt59990mz51+Vik9Pb3RuV27dunQoUNKTEzU3LlzG50/cOCAJGnnzp2++SdOnNCoUaMa7RIYEhKi4cOHa8+ePd/mo/huFdy1a1eTV9sqKirk9Xq1e/duDRkyxDd+6aWX+q4onRYWFqa4uDjL9vBFRUUyxujaa69VeHj4Oeu5++67NXXqVC1ZskRTp06VJC1atEgnT57kqhQAtDDCFADAFnFxcY3GvvrqK0nStm3btG3btjO+tra2VpJ0+PBhSVJsbGyz1zhfp2tavHjxWeedrum06OjoJueFhYWpvr7ed3z6MyQlJTWrnh//+Mf6+c9/roULF/rC1F/+8hd16NBBEydObNZ7AAAuDDagAADY4vSzUN90OoDceuutMsac8efFF1+UJHXq1EnS1xs4NKWysrLR2Onnl06dOtXo3Olg01RNy5cvP2tNI0aMaM7HbqRz586SpLKysmbN79ixo7KysrR582aVlJRo/fr12rFjhyZMmNDoShgAILAIUwAAx+jbt6+io6NVVFQkj8dzzvmXXnqpIiMjVVRUpBMnTljOeb3eJne969Kli6Smw0txcXGjsWHDhkmSCgoKmvUZzteQIUMUEhKiNWvWNOszS/JtrPH888+z8QQA2IgwBQBwjLCwME2bNk2lpaX6+c9/3mS42Lp1q+9KlNvt1g9/+ENVVVXpySeftMxbuHChdu/e3ej1aWlpcrlceuWVVywBbM+ePfrDH/7QaP7NN9+s5ORkPfXUU8rLy2t03uPxKD8//7w/62lxcXG69dZb9cknnzT5nFhVVVWjq2ipqakaOnSoFi9erGXLlmngwIFNPoMGAAgsnpkCADjK3Llz9cEHH+jpp5/WW2+9pWuuuUaxsbEqKyvTRx99pC1btqigoMD3nNRjjz2mVatW6b//+7+Vn5+v1NRU7dixQ2+//bZuuOEGrVy50vL+iYmJmjhxopYsWaK0tDSNGTNGVVVVeu211zRmzBj9/e9/t8x3u93629/+prFjx2rEiBEaNWqUBgwYIJfLpdLSUv3zn/9Ut27dfJti+OOPf/yjtm7dqkcffVRvv/22Ro0aJWOMdu/erZUrV6qystJ3O+BpU6dO1R133CGJq1IAYBfCFADAUdxut9555x395S9/0aJFi/T3v/9ddXV1iouLU79+/TR16lQNGDDANz8hIUEbNmzQnDlz9N577ykvL09paWnKzc3V6tWrG4Up6eurVjExMXr11Vc1f/58ffe739Vzzz2nxMTERmFKkoYOHaotW7boiSee0Ntvv63169fL7XYrKSlJt9xyy7fe+CEmJkbvv/++fvvb32rZsmV69tlnFRkZqZSUFN1///1q3759o9dMmDBB06dPV0hIiG677bZvtT4AwD8uY4yxuwgAAAIhOztbc+fO1Zo1azRy5Ei7y7mgioqKNHToUN1+++1atGiR3eUAQJvEM1MAAAShJ554QpI0bdo0mysBgLaL2/wAAAgS+/bt05IlS7Rt2zYtXbpUmZmZysjIsLssAGizCFMAAASJTz/9VA888IA6dOigcePG6bnnnrO7JABo03hmCgAAAAD8wDNTAAAAAOAHwhQAAAAA+IEwBQAAAAB+IEwBAAAAgB8IUwAAAADgB8IUAAAAAPiBMAUAAAAAfiBMAQAAAIAf/h+rE7yNWmMvEwAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 1000x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# Generate term frequencies\n",
    "frequencies = np.arange(1, 101)\n",
    "\n",
    "# Calculate TF-IDF scores (using log(1 + frequency))\n",
    "tfidf_scores = np.log(1 + frequencies)\n",
    "\n",
    "# Calculate BM25 scores\n",
    "k1 = 1.5  # typically between 1.2 and 2.0\n",
    "b = 0.75  # typically between 0.5 and 0.75\n",
    "avg_dl = 50  # average document length\n",
    "\n",
    "# BM25 formula\n",
    "bm25_scores = ((k1 + 1) * frequencies) / (k1 * (1 - b + b * frequencies / avg_dl) + frequencies)\n",
    "\n",
    "# Plot the scores\n",
    "plt.figure(figsize=(10, 6))\n",
    "plt.plot(frequencies, tfidf_scores, label='tf() of TF/IDF', color='green', linewidth=3)\n",
    "plt.plot(frequencies, bm25_scores, label='tf() of BM25', color='green', linewidth=3)\n",
    "\n",
    "\n",
    "plt.annotate('TF/IDF', xy=(60, tfidf_scores[60]), xytext=(40, tfidf_scores[60] + 0.5),\n",
    "             arrowprops=dict(arrowstyle=\"->\", color='black'), fontsize=12, color='black')\n",
    "plt.annotate('BM25', xy=(60, bm25_scores[60]), xytext=(80, bm25_scores[60] - 0.5),\n",
    "             arrowprops=dict(arrowstyle=\"->\", color='black'), fontsize=12, color='black')\n",
    "\n",
    "plt.xlabel('Frequency', fontsize=14)\n",
    "plt.ylabel('Score', fontsize=14)\n",
    "plt.title('TF/IDF vs BM25 scoring functions', fontsize=16)\n",
    "\n",
    "plt.grid(True)\n",
    "\n",
    "plt.legend()\n",
    "plt.savefig('tfidf_bm25.jpg', format='jpeg')\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "73f3875c-821d-4db4-a122-d1e40ebae9c6",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABW0AAAJOCAYAAADMCCWlAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAADMsUlEQVR4nOzdd5xU1fk/8M/0sr1XyrJU6VUWERDpEVEJImJAxUR/AYziVxMwaohRNMGoidgSBUwgKiiogBTRBRUQQUCKVKnLFraX6TPn98fszM7szvbZaft5v16Te+655557Zu9izjx75rkSIYQAEREREREREREREQUEqb8HQEREREREREREREQ1GLQlIiIiIiIiIiIiCiAM2hIREREREREREREFEAZtiYiIiIiIiIiIiAIIg7ZEREREREREREREAYRBWyIiIiIiIiIiIqIAwqAtERERERERERERUQBh0JaIiIiIiIiIiIgogDBoS0RERERERERERBRAGLQlCnJz5syBRCLBXXfd1aT2L7/8MiQSCa677ro2Hdef/vQnSCQS/OlPf2rT67jq3LkzJBIJLly44LNr+ooQAn/729/Qp08faDQaSCQSSCSSRs/Lzs6GRCLBmDFj2n6QRERERC3A+WwNzmfr4nyWiNorBm2Jgty8efMAABs3bkRJSUmj7VeuXOl2XrC49957IZFIsGrVKn8PxS/eeOMNPPHEE7hy5QomT56MuXPnYu7cuf4eFnkJP4wQEVF7xvls+8D5bPvQ1GA8ETVO7u8BEFHrjBo1Cl27dsXZs2exZs0aLFiwoN6233//PY4ePQqFQoFf/epXbTquBQsW4K677kJ8fHybXsfVzp07YTabkZaW5rNr+sqHH34IAFi3bh3Gjx/v59EQEREReQ/nszU4nyUiIgeutCUKchKJBPfffz+AmlUH9XEcv+WWW5CYmNim44qPj0fPnj19OsnNzMxEz549oVAofHZNX7l06RIAoFu3bn4eCREREZF3cT5bg/NZIiJyYNCWKATce++9kMlk+OGHH/Djjz96bGMwGPC///0PQM1XySoqKvCvf/0Ld9xxB7p164awsDCEhYWhb9++ePLJJ1FaWuqxL9dcW5988gnGjh2L2NhYSCQSZGdnA6g/B5jZbMZ///tfzJ49Gz179kRkZCQ0Gg169OiBhx9+GFevXnVrf+HCBUgkEqxe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5v8lIiIKVZzPuuN81q6588+m+s9//tNgfVPntEIIrF27ttnXb0rfBoMBH330UYv7bq6bb74ZSqUS2dnZKCgoaNa5jlXunn7PZTIZxo8fD6Dmjx9EVD8GbYlCjFarxaxZswDYc4Lp9Xr07dsXQ4cOdWuXlJSEmJgYlJaW1pmo7Nu3D4sXL26T8fXq1QsA8M9//tOt/tSpU3jooYfqPc/xF+7mBqw6duyIGTNmQAiBBx980C33VFVVFX7zm9/AYDBgxIgRzX5oQXONHDkS119/PfR6PR588EHodDrnscLCQjz44IMA7KtImpLjqSW0Wi0+++wz3HHHHfjuu+8wZswYjxPupnjsscfccnwZjUbMnz8fVVVVGDZsmNtXqRz3/e2333Y+qAGwf9iaO3cuysrKWviOavpesWKF21eucnNzMWfOnGZ/MGqNadOmYejQodi/fz/uu+8+jzm+SkpK8Oabb7qNy/H7febMGY85fxUKBZ555hkIIXD77bd7zNtntVrx5ZdfYt++fV58R0RERL7H+aw7zmdrNGf+2VRvvPGG8wFrDi+//DL279+PiIgItz8WOO79+vXrnQ8dA+zzsKeffrreB8I2haPv1atXo6KiwllvMBjw29/+FufPn29x382VlJSEhQsXoqqqClOnTsXRo0frtDEajfj0009x8uRJt/rGfs+feeYZKJVKPP7441i9erXb/N3h2LFjzj/WELVnDNoShSDHxMIRMKq9KgGw/5Xz6aefBmB/Murw4cNx9913Y+TIkRgxYgRuueUWj3/lba1nnnkGEokETz31FPr164dZs2bh5ptvRt++fdGlS5d6J5q33XYbpFIp/vGPf2D8+PG4//778cADD+DTTz9t9JorVqxA//798d133yEzMxO33347ZsyYgYyMDGzatAkZGRlYs2aNt9+qR2vXrkWnTp3wySefICMjAzNmzMBtt92GzMxMfP/99xg0aBBee+21Nh2DUqnEhx9+iF/96lf48ccfMWrUKFy+fLlZfWRlZSE2NhY9evTA1KlTMXPmTHTp0gXr1q1DYmIi3nvvPbf2jzzyCKKjo7FlyxZ06dIFv/zlLzFt2jR06tQJR44cwf3339/i97NkyRIolUr861//Qo8ePTBz5kxMnjwZmZmZMBqNuP3221vcd3NJpVJs3LgRAwYMwOrVq5GRkYEbbrgBs2bNwvTp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iIISV9oSERERtQkGbQMA0yMQERERUVDy0kpbIYRzpW1SpArRWmXrxkVEREQU5Bi0DQBMj0BEREREQclLK23zy40o05sB8CFkRERERACDtgGhwlTzVTAGbYmIiIgoaHhppe3JvJp0YUyNQERERMSgbUBg0JaIiIiIgpKXVtq6PYQsifNhIiIiIgZtA4BreoRwJXPaEhEREVGQ8NJKW7egLVfaEhERETFoGwhcV9qGycP8OBIiIiIiomZwrLSVyIBWLD44WR20lUkl6JrIRQxEREREDNoGAEfQNlwRDplU5ufREBERERE1kWOlrSYakEha1IXFasPZa/ZvnnWO00Kt4HyYiIiIiEHbAOAM2jI1AhEREREFE0fQthX5bC8UVcFksQEAeiZHtn5MRERERCGAQdsA4MhpG65g0JaIiIiIgoTNChjL7OVW5LM9yXy2RERERHUwaOtnJqsJRqsRABCp5MoCIiIiIgoShrKacitW2vIhZERERER1MWjrZ64PIWN6BCIiIiIKGo6HkAGAJqbF3biutO3JoC0RERERAAZt/c6RGgFgegQiIiIiCiKOfLZAq9IjOFbaapUydIjRtm5MRERERCGCQVs/qzTVBG0jlFxZQERERERBwnWlbQvTI1QZLbhUrAMAdEuKgFQqaf24iIiIiEIAg7Z+Vm4qd5YZtCUiIiKioOGFlban811SIyRxLkxERETkwKCtn7mmR2DQloiIiIiChhdW2vIhZERERESeMWjrZ67pEZjTloiIiIiChhdW2vIhZERERESeMWjrZ0yPQERERERBiSttiYiIiNoMg7Z+xvQIRERERBSUWrnSVgiBk3n2BQzx4SrEhau8My4iIiKiEMCgrZ9VmGpWFzA9AhEREREFjVautL1WYUSJzgyAqRGIiIiIamPQ1s9cg7ZcaUtEREREQaOVK21/LqxylrslcfECERERkSsGbf3M9UFkDNoSERERhYbdu3dj6tSpSE1NhUQiwcaNGxs9Z82aNejfvz+0Wi1SUlJw//33o6ioqO0H21KOlbYSGaBsftA1p0TvLHeI0XppUEREREShgUFbP6swMz0CERERUaipqqpC//79sWLFiia1//bbbzFnzhzMmzcPx48fx7p167B//378+te/buORtoJjpa0mGpBImn36FZegbVqMxjtjIiIiIgoR8tZ2sGHDBvzvf//DyZMnodPpcPbsWQDAyZMn8emnn2L27NlIS0tr9UBDlWOlrVwih0bOySoRERGRP3h7Tjt58mRMnjy5ye337t2Lzp074+GHHwYAZGRk4MEHH8SLL77YvDfiS46Vti3IZwsAOaU6ZzktmvNgIiIiIlctDtrabDbMmjUL69evBwBoNBro9TV/LY+JicGTTz4Jq9WKxYsXt36kIcqR0zZcGQ5JC1YoEBEREVHLBcqcNisrC0uWLMGWLVswefJkFBQUYP369ZgyZUqbXbNVbDbAUG4vtyCfLQDklNb8nNO50paIiIjITYuDti+//DLWrVuHhx56CC+88AL+/ve/49lnn3UeT0pKwo033ojNmzczaNsAR3oEpkYgIiIi8r1AmdPecMMNWLNmDWbOnAmDwQCLxYKpU6c2mF7BaDTCaDQ698vL7UFUs9kMs9nstbE5+nLrU18KBQQAwKaKgrUF17tSbA/ahqlk0Mrh1TFTXR7vIwUl3svQwPsYGngfQ4Ov72NTr9PioO2qVaswdOhQvP766wDgcZVo165dsXnz5mb1u2zZMnz88cc4efIkNBoNRowYgRdffBE9evRocCz33XefW51KpYLBYGjWtX1NCOFMj8CHkBERERH5XlvNaZvrxIkT+N3vfoenn34aEydORG5uLh5//HE89NBDeOeddzyes2zZMixdurRO/fbt26HVev/BXjt27HCWtcYCjK8uXy3W4eCWLc3qyyaAKyUyABJESi34/PPPvTdQapDrfaTgxnsZGngfQwPvY2jw1X3U6XSNN0IrgrZnz57F/PnzG2wTFxfX7Cfe7tq1C/Pnz8fQoUNhsViwZMkSTJgwASdOnEBYWFi950VGRuLUqVPO/WBINaC36GEVVgAM2hIRERH5Q1vNaZtr2bJluOGGG/D4448DAPr164ewsDDceOON+Mtf/oKUlJQ65yxevBiLFi1y7peXl6NDhw6YMGECIiMjvTY2s9mMHTt2YPz48VAoFPbK3MPACXsxpUsvTJncvDQOBRVGWPftAgD06JCAKVMGeW285JnH+0hBifcyNPA+hgbex9Dg6/vo+HZUY1octNVoNCgrK2uwzcWLFxEdHd2sfrdu3eq2v2rVKiQmJuLgwYMYNWpUvedJJBIkJyc361r+5shnCzA9AhEREZE/tNWctrl0Oh3kcvepuUwmA2D/dpYnKpUKKpWqTr1CoWiTDxxu/Zora8YZFgtZM6+XV1FzfofYMH7Q9aG2+v0g3+O9DA28j6GB9zE0+Oo+NvUa0pZeYODAgdi2bVu9KQiKi4uxdetWDB8+vKWXAADnJDo2NrbBdpWVlejUqRM6dOiAadOm4fjx4626ri9Uukx2udKWiIiIyPfaak5bWVmJw4cP4/DhwwCA8+fP4/Dhw7h06RIA+yrZOXPmONtPnToVH3/8Md544w38/PPP+Pbbb/Hwww9j2LBhSE1Nbdmba0uG0pqyOrrZp7s+hCyNDyEjIiIiqqPFK20ffvhh3H777Zg+fTreeustt2Pnzp3D/fffj7KyMjz88MMtHpzNZsMjjzyCG264AX369Km3XY8ePfDuu++iX79+KCsrw/LlyzFixAgcP34c6enpddr76qENjj5dt65KdCXOslauZeLqAMbk4qGB9zE08D6GBt7H0BCoD21ojraa0x44cAA33XSTc9+RxmDu3LlYtWoVcnNznQFcALj33ntRUVGB1157DY899hiio6MxduxYvPjii614d20oIgXoOwPQlwLx3Zp9ek5JTdA2nUFbIiIiojpaHLSdNm0afv/73+PFF19Ep06dnPlmExMTUVRUBCEEnnrqKYwdO7bFg5s/fz6OHTuGb775psF2WVlZyMrKcu6PGDECvXr1wltvveX29F8HXz+0AfCczPi0+bSznHchD1vym/cAB/I9JhcPDbyPoYH3MTTwPoaGQHtoQ3O01Zx2zJgx9aY1AOwpwGpbuHAhFi5c2Kzr+E3H4fZXC+WU1tzLtGgGbYmIiIhqa3HQFrAHP8eOHYvXXnsN3333HQwGA2w2GyZNmoSHH34YEydObHHfCxYswKZNm7B7926Pq2UbolAoMHDgQJw9e9bjcV89tAFoOJmx7IIM2GMvD+w9EFN6Nu8BDuQ7TC4eGngfQwPvY2jgfQwNgfrQhuZqyzkteea60pbpEYiIiIjqanHQ9tKlS1AqlRg/fjzGjx/vtQEJIbBw4UJs2LAB2dnZyMjIaHYfVqsVR48exZQpnoOgvn5oQ31962w1Kwyi1dH80BoEmFw8NPA+hgbex9DA+xgaAu2hDc3RVnNaapgjp61SLkV8WN15OREREVF71+IHkWVkZGDJkiXeHAsAe0qE//73v1i7di0iIiKQl5eHvLw86PU1f42fM2cOFi9e7Nz/85//jO3bt+Pnn3/GDz/8gHvuuQcXL17EAw884PXxeVOFqcJZ5oPIiIiIiHyvrea0VD8hBK5Ur7RNi9ZAKpX4eUREREREgafFK21jYmIQFxfnzbEAAN544w0A9jxgrlauXIl7770XgH1FhFRaE28uKSnBr3/9a+Tl5SEmJgaDBw/Gnj17cN1113l9fN5Uaa50lsOV4X4cCREREVH71FZzWqpfqc4MnckKgA8hIyIiIqpPi4O2N954I7777jtvjgUAGnxgg0N2drbb/ssvv4yXX37Z62Npa24rbRVcaUtERETka201p6X6OVIjAHwIGREREVF9WpweYdmyZfjxxx/x5z//GRaLxZtjajeYHoGIiIjIvzin9b0rJQzaEhERETWmxStt//rXv6Jv375YunQp3nrrLfTv3x9JSUmQSNxzUkkkErzzzjutHmgoYnoEIiIiIv/inNb33FbaMj0CERERkUctDtquWrXKWc7NzUVubq7Hdpzg1o/pEYiIiNoZIewv+46Hsqhp11DZ03muKabqbddI2XluU8YHwGJGmCEXqCwAYtKa97MIEJzT+t6VEp2zzJW2RERERJ61OGh7/vx5b46jXXIEbdUyNRQyhZ9HQ0TkBY6AlLA18qpug4baCs9lswlRugtA7mFAJvV8zTr9Cg/X9DQGRx3qXrf2ec4616BZ7X49XNP1HNd2Hts0cA1PbeocRxPP8bBt6FiD/aBJ58qEDaNKSyHL+3vNz9t1zE3sx/PW+QtZf5tG+wfcxtOkIGgj/YcgBYBxAKyan4BbX/X3cFqEc1rfy3FJj5Aeq/XjSIiIiIgCV4uDtp06dfLmONolR9CWqRGIfMQRZLIYAWEGbJbql9W+FVb3fbd6q4d2trrnCZtL2eqytdVq51pXq60QHups1e1dz3Eti7r1znMcdTaX47Vetc9z/Kw8thf19+mDwJQCwBgAONXml6I2JAUQAwC6RhoStTHOaX3PkR5BJpUgKULl59EQERERBaYWB22p9Rw5bfkQMgp4QtiDjRYjYDW5vMy1ymbP9TazexubY2upaeso28yA1RFMdWnnPO6h7FZnrTnXLQBrgcJmwTQAOOznnycRAQAEJIBEAolEClSX3bZA3Trn1tFLrWNufXk4Xqf/hto09ZijDA/9N9Bfve+vdt9oYp/1lSX19FGr7xb0ZxMCOVdykJI6GERN5QjaJkeqIZe1+LnIRERERCGt1UHbNWvWYNWqVTh8+DDKy8sRGRmJgQMH4t5778Xdd9/tjTGGJKvNiipzFQDms6UmsNkAi8H+MusAswGw6OtuLcbqdkbA7LpvsAdGHccsBsBicqk3Alajvc51azXXBGpD9Ku97Y8EkMrsgS3nq3pf6rovqVtf51xHGfZy7X6d7SV16+BSJ5G4X8/tJam1lcJqE7h0+TI6dsqATCZ3D9RJpbX6lta9vmPMntrVGVftekmtfjzsAw0c83QePLTxMJY6QUm4lCWN9FErKOexnadr1BNQbPB6TdhKJDCbzdiyZQumTJkChYIpgoKV1WzGD1u2YEr/Kf4eSqtxTusbVUYLSnVmAHwIGREREVFDWhy0tVqtuPPOO7Fx40YIIaBWq5Gamor8/Hx88cUX2LlzJz766COsW7cOUin/gl6bY5UtwPQIIcViAowVgKkCMFYCpirAVFn9qnLZ19mDr65ls869bNa7B2ipLokMkMoBmcK+dbxkCnswya1eBptEhpKyCsTExUPqeswRcHRpa6+X1lMn83CuzL0fRztJ7WMe6jy1dQZLa9fVCmzW7qd2fZ1zJI3/XAOczWzGj1u2IH3SFMgY7COiVuKc1rccq2wBIJ1BWyIiIqJ6tTho+49//AMbNmzAyJEj8eKLLyIrK8t5bN++ffj973+PjRs34p///Cd+97vfeWWwocQ1aMv0CAHCZgMMpfaXvhQwlFXvl0FaVYReVw9BunUXYK4EDOWA0fGqqH5V2lenBiuZEpCr7VuZEpArAZmqZitT2oOg8uqyVF5dVtScI1MA0uo2UrlLfXVZqqhur6gpO4Oursfk1fty93a1A7TNDEBazWZ8U72yT8pgHxERgXNaX7tSUpPIOj2aQVsiIiKi+rQ4aLt69Wp0794dO3furPO1xuHDh+OLL75Av379sHLlSk5wPag0uay0VXClrdcJYQ+oVhUClQWArhDQFdlfVUU1ZX0JoC+u3paivhQAMgDdASDfB2OXKgCFFlBoAKUWkGvsZYWmul5dXedpq7YHTOWa6q3aXi9T1ew7gq7OttX7IbACk4iIqLk4p/WtnJKalbZMj0BERERUvxYHbU+fPo0FCxbUm4dOoVBg6tSpeO2111o8uFBWbip3lrnSthmEAHTFQHkOUJEHVOQClfn2bUWe/VV1zf6yGNp+PFIFoIqofkUCqnB7WRkGKGuV3bZaQBFWXQ6zB2OVWvtWxhWgREREvsI5rW9dcUmPkBat9eNIiIiIiAJbi4O2SqUSVVVVDbapqqqCUqls6SVCmutKWwZtXdhsQGUeUHKh+nURKLsClF22B2rLcryf31UdBWhiAU1M9SsaUEdXb6MAdTQsinDsP3ISw0aNgzwsDlBH2oO0CrV3x0JEREQ+xTmtb3GlLREREVHTtDhoO3DgQHz44Yd48sknkZqaWud4bm4uPvzwQwwaNKhVAwxVFeYKZ7ndpUcQwr4StvAMUHgaKDprLxf/DJReamVeWAmgjQPCE4GweCAssaasjat+uZQ10dVPsm9kyGYzrp2XQ6QOApgLlYiIKGRwTutbrg8iS43mH7+JiIiI6tPioO2iRYswbdo0DBkyBI899hhGjx6NpKQk5OfnIzs7G3//+99RXFyMRYsWeXO8IaPCVBO0DemVtoZyoOAnIP8YkH/c/rr2k/0hX82lCAOi0oGoNCAyDYhMBSKSgYgUIDzJvg1LsD+8ioiIiKgJOKf1LcdK28QIFVTyxv9wTkRERNRetTi6NXXqVCxfvhx/+MMf8MQTT7gdE0JALpdj+fLluOWWW1o9yFAUkukRzHog90fgyvdAzgEg5weg9GLTz5drgJjOLq9OQHQnILqjPVCrjubDsoiIiMirOKf1HYPZioIK+zeqmBqBiIiIqGGtWpK4aNEi3HbbbVizZg0OHz6M8vJyREZGYuDAgbj77rvRpUsXb40z5LiutA3a9Aj6EuDCN8D53cDl/fbVtDZL4+dFdQDiuwFx3exbRzkylUFZIiIi8jnOaX0jt6zmIbFp0QzaEhERETWk1d8j79KlC5566ilvjKVdqTQH4Upbsx64uAc4vwv4eReQewSAqL+9XAMk9wGSegNJfeyvxF72PLJEREREAYRz2rbHh5ARERERNR2Tf/pJ0OS0NZQDZ7YDJz4Bzn4BmHX1NJQACT2AtCFA+mD7NvE65pclIiIiIgBATmnNPDI9RuvHkRAREREFPmlLT3zppZcQHx+Pq1evejx+9epVJCQk4B//+EeLBxfK3NIjKAMsPYKhDDj0X2DNncDfMoGP5gE/fVo3YJvUBxj+W2DWB8AfLgLzvwNuWwEMuR9I6ceALREREQU8zml9x3WlbTrTIxARERE1qMVRtXXr1qF///5ITU31eDw1NRUDBgzA+++/j4cffrjFAwxVjvQIEkgCJ6dt7o/A9/8Gjq7zvKJWGwf0mAxkjgU6jwLCE3w/RiIiIiIv4pzWd64wPQIRERFRk7U4aHvmzBnMnj27wTa9e/fGmjVrWnqJkOZYaRumCINU0uIFz61nNgAnNtqDtVe+r3s8IgXoNRXodSvQMYurZ4mIiCikcE7rO1dKXYK2XGlLRERE1KAWR+D0ej3CwsIabKNWq1FZWdlgm/bKEbT1W2oEsx7Y/zbwzSuAvtj9mDIC6D8T6DfTnptW6segMhEREVEb4pzWdxzpEaK1CoSpuBCAiIiIqCEtni117NgRe/bsabDN3r17kZ6e3tJLhDRHegSfP4TMZgWO/A/46nmgPMf9WFIfez7afncCqgB+OBoRERGRl3BO6xsWqw155QYAQDpTIxARERE1qsVLKH/xi1/gm2++wbvvvuvx+L///W988803mDp1aosHF6pMVhOMViMAIELho+CoEMDpbcCbI4FP5rsEbCVAn18C928HHvoGGDqPAVsiIiJqNzin9Y38CiOsNgGAqRGIiIj+f3t3Hh5VffZ//DNJJpOEkA3IxiJUcUERI5sBq1GBSPmhFquPCsLjhii0IFUfqcUKVmm1QBVQi6hIERdcUJEKEQwRZZFNRRREkWgkRIWQhGyTzPn9EWdImgCzZmaO79d15brOOXOWe3oH+50737m/gDu8nml7zz336IUXXtAtt9yixYsXa/DgwerYsaOKioq0atUqFRQUKDMzU1OmTPFnvKbgbI0gtdJM29JCadnt0jfvNz3ePVcadL+U1iPwMQAAAIQgxrSto6jxImRJcUGMBAAAIDx4XbTt0KGD3nvvPY0aNUr5+fnKz8+XxWKRYTT8Bb1v3756/vnn1aFDB78FaxbO1ghSK/S0/Xy59MbtUvXho8c69pYGT5e6nh/YZwMAAIQ4xrSt47tDla7tjrRHAAAAOCGfVgA47bTT9NFHH+mjjz7Spk2bdPjwYSUlJalfv37q06ePv2I0ncYzbeOtASra1tVIefdJG588eiyxizTkAanH5ZLFEpjnAgAAhBnGtIHXdKYtRVsAAIAT8cuyrX379lXfvn1VV1enTz/9VJJkt9tltVr9cXvTaVy0TYhO8P8DfvpKeuUGaf/HR4/1uFwa/pgUm+T/5wEAAJgAY9rAKSo9WrRlITIAAIAT82ghsr179+qZZ57R7t27m722fPlydezYUX369FGfPn2UkZGhl19+2W+BmklA2yPsfEP614VHC7aRNmnYTOmq5yjYAgAAiDFtMFC0BQAA8IxHRdunnnpKt9xyi2w2W5Pje/bs0dVXX60ffvhBXbp00RlnnKFDhw5p5MiR2rZtm18DNoOAtUfY+aa09H8l5/3bnSLd/K7U92baIQAAAPyMMW3rc7ZHaBMdqcRYZi4DAACciEdF23Xr1umcc87RSSed1OT4o48+qurqao0fP1579+7Vjh079Oqrr6q+vl5z5871a8BmEJD2CF/nS6/eJBmOhv2zfieNzZcyzvbP/QEAAEyCMW3rKymvkSSlJcbIwmQCAACAE/K4PUK/fv2aHX/nnXcUHR2thx56yHXsiiuu0K9//Wu9//77vkdpMn5vj1C0RXpxpFRf27Df6zppxFOSra3v9wYAADAZxrStq7bOoYqaOklSuzbRQY4GAAAgPHhUtP3hhx/Uvn37JscOHjyor776Sv3791fbtk2LhFlZWSoqKvI9SpNpPNO2bbSPhdUfdkuLfyfV/lwIPu030mVzpAiPUgsAAPCLwZi2dZVW1rq2k+Mo2gIAALjDo8qe1WrVTz/91OTYli1bJEl9+vRpdn6bNm18CM28mhRtrT4UbUu/lf59hVR1sGH/pIHS756RIqN8CxAAAMDEGNO2roONirYpzLQFAABwi0dF21NPPVWrV69ucmzVqlWyWCwaMGBAs/O///57ZWRk+BahCTVZiMzb9ghHfpT+/Vup7OdZH+lnS9e+IFlZjRcAAOB4GNO2roNHGs20pWgLAADgFo+KtldeeaW+/PJLjRs3Tp988oleeeUVzZ8/X/Hx8br00kubnf/BBx/olFNO8VuwZtG4p61X7REMQ3r9VumnLxv2U06WRr0mxST6KUIAAADzYkzbug4dsbu2k+OsQYwEAAAgfHhUtJ00aZJ69uyp+fPnKysrS//zP/+j8vJyTZs2rdnXxjZv3qw9e/Zo8ODBfg3YDCp+7j8bZYlSTGSM5zfYvVLa827DdnyadP3rUnwHP0YIAABgXoxpW9dBetoCAAB4zKPmp3Fxcfrggw80e/ZsbdiwQe3atdNVV12l4cOHNzt369atuvzyy3XZZZf5LVizKKstk9TQGsFisXh2cV2ttHLK0f1L/yYln+TH6AAAAMyNMW3rOnSEnrYAAACe8njFqvj4eE2dOvWE540dO1Zjx471Kiizc7ZH8Ko1wsYnpINfN2yfNFA687d+jAwAAOCXgTFt66GnLQAAgOc8LtrCd69f9rrKa8tld9hPfHJj5QektY/8vGNpmGXr6UxdAAAAoBWVNmqPkEJ7BAAAALdQtA2CDnEd1CHOix60a6ZLteUN273HSBln+zcwAAAAwM8OVjZaiIyZtgAAAG7xaCEyBFHRVmnb8w3btkTp4hN/nQ8AAAAINmdP28gIixJimDMCAADgDoq24cAwpP/8nySjYT/nHqlN+6CGBAAAALjD2dM2Oc7q+SK8AAAAv1AUbcPBp69I321q2G5/qtTvluDGAwAAALjpUKWzaEtrBAAAAHdRtA11tUekvPuO7ufOkCKtwYsHAAAAcFO1vV6VtfWS6GcLAADgCYq2oW7rIqn8+4btUy+Vug8KbjwAAACAm5yzbCUphZm2AAAAbqNoG+p2vnl0+5L7jn0eAAAAQkZBQYGGDx+uzMxMWSwWLVu27ITX1NTU6N5779VJJ50km82mrl276plnngl8sAF06Ijdtc1MWwAAAPexfGsoq/hB+nZDw3a77lLamcGNBwAAAG45cuSIevXqpRtvvFEjRoxw65qrr75aBw4c0NNPP61TTjlF+/fvl8PhCHCkgdV4pm1yHC2+AAAA3EXRNpTt/o9k/DxQP+P/BTcWAAAAuG3o0KEaOnSo2+e/8847Wrt2rb7++mulpKRIkrp27Rqg6FrPwSON2iMw0xYAAMBttEcIZV+8fXT7dIq2AAAAZvXmm2+qT58+evjhh9WxY0edeuqpuvPOO1VVVRXs0HzSdKYtRVsAAAB3MdM2VNVUSF+917Adny5lnhvceAAAABAwX3/9tdatW6eYmBi9/vrr+vHHH3X77bfrp59+0rPPPtviNTU1NaqpqXHtl5WVSZLsdrvsdnuL13jDeS9v7vljWbVrOyEmwq9xwTO+5BGhhVyaA3k0B/JoDq2dR3efQ9E2VO15V6r/eRB++jApgknRAAAAZuVwOGSxWPT8888rMTFRkjRr1iz97ne/0+OPP67Y2Nhm18yYMUPTpk1rdnzVqlWKi4vze4x5eXkeX7Ntb4ScX+77fNtHqtzj56DgMW/yiNBELs2BPJoDeTSH1spjZWWlW+dRtA1VTVojDAteHAAAAAi4jIwMdezY0VWwlaQzzjhDhmHou+++U/fu3ZtdM2XKFE2ePNm1X1ZWps6dO2vIkCFKSEjwW2x2u115eXkaPHiwrFbPFhNb9fInUnGxJGnY4Bx1SfF/MRnu8SWPCC3k0hzIozmQR3No7Tw6vx11IhRtQ1G9Xdq9smHblih1/XVw4wEAAEBADRw4UEuXLlVFRYXi4+MlSbt371ZERIQ6derU4jU2m002m63ZcavVGpAPHN7ct6y6zrWdmhjHB9oQEKjfD7Q+cmkO5NEcyKM5tFYe3X0G37kPRd+8L9Ucbtg+dYgUxaINAAAA4aSiokLbt2/X9u3bJUl79+7V9u3bVVhYKKlhluzo0aNd51933XVq166dbrjhBu3cuVMFBQW66667dOONN7bYGiFcHDzSsBBZVIRF8TbmiwAAALiLom0oojUCAABAWNu8ebOysrKUlZUlSZo8ebKysrJ03333SZL279/vKuBKUnx8vPLy8lRaWqo+ffpo5MiRGj58uB577LGgxO8vh34u2ia3iZbFYglyNAAAAOGDP3eHGodD+mJFw3akTTplUHDjAQAAgMdycnJkGMYxX1+4cGGzY6effrrpFjI5WNlQtE2J45tjAAAAnmCmbaj5fptU/n3D9q9yJFvboIYDAAAAeKOqtl7VdockKbkNff4AAAA8QdE21Hyx/Og2rREAAAAQppyzbCUppQ0zbQEAADxB0TbUuIq2Fum03wQ1FAAAAMBbzn62kpRMewQAAACPULQNJT/sln7c3bDd5TwpvkNw4wEAAAC8dKiSoi0AAIC3KNqGkl1vH92mNQIAAADC2MHGM21pjwAAAOARirah5HP62QIAAMAcGrdHSGEhMgAAAI9QtA0VFSVS0eaG7dQzpZRfBTceAAAAwAcHK+2ubdojAAAAeIaibaj44Yuj27+6MHhxAAAAAH7QdKYtRVsAAABPULQNFaWFR7eTuwUvDgAAAMAPDrIQGQAAgNco2oaKQ/uObiefFLw4AAAAAD8orWQhMgAAAG9RtA0VjWfaJnUJXhwAAACAHxw80tDTNjoyQm2iI4McDQAAQHihaBsqShvNtKVoCwAAgDDn7Gmb3MYqi8US5GgAAADCC0XbUOFsj9CmgxTdJrixAAAAAD4wDMPV05Z+tgAAAJ4LuaLtjBkz1LdvX7Vt21apqam64oortGvXrhNet3TpUp1++umKiYlRz549tWLFilaI1k/qaqTy/Q3bzLIFAABAmKusrVdtnUOSlEI/WwAAAI+FXNF27dq1Gj9+vDZs2KC8vDzZ7XYNGTJER44cOeY1H374oa699lrddNNN2rZtm6644gpdccUV2rFjRytG7oPD30kyGraTWIQMAAAA4e3gERYhAwAA8EVUsAP4b++8806T/YULFyo1NVVbtmzRBRdc0OI1jz76qC699FLdddddkqQHHnhAeXl5mjt3rp588smAx+yzQ98c3U6maAsAAIDwdqjyaNE2hfYIAAAAHgu5mbb/7fDhw5KklJSUY56zfv16DRo0qMmx3NxcrV+/PqCx+U1p4dFt2iMAAAAgzB2qtLu2k+OsQYwEAAAgPIXcTNvGHA6HJk2apIEDB+qss8465nnFxcVKS0trciwtLU3FxcUtnl9TU6OamhrXfllZmSTJbrfLbre3eI23nPc73n0jDu5V5M/bdW07yfBzDPCdO3lE6COP5kAezYE8mkNr55Hfl/BxiPYIAAAAPgnpou348eO1Y8cOrVu3zq/3nTFjhqZNm9bs+KpVqxQXF+fXZznl5eUd87Xeezeq08/b+du/1pEvqgISA3x3vDwifJBHcyCP5kAezaG18lhZWdkqz4HvGve0ZSEyAAAAz4Vs0XbChAlavny5CgoK1KlTp+Oem56ergMHDjQ5duDAAaWnp7d4/pQpUzR58mTXfllZmTp37qwhQ4YoISHB9+AbsdvtysvL0+DBg2W1tvzVsMhnH5VKJUMWXXjZKCnK5tcY4Dt38ojQRx7NgTyaA3k0h9bOo/PbUQh9jXvaJtPTFgAAwGMhV7Q1DEO///3v9frrrys/P1/dunU74TXZ2dlavXq1Jk2a5DqWl5en7OzsFs+32Wyy2ZoXRq1Wa8A+cBz33ocbetpa2mbIGhsfkOfDPwL5O4LWQx7NgTyaA3k0h9bKI78r4YOZtgAAAL4JuaLt+PHjtWTJEr3xxhtq27atqy9tYmKiYmNjJUmjR49Wx44dNWPGDEnSxIkTdeGFF2rmzJkaNmyYXnzxRW3evFnz588P2vtwW22ldOSHhm0WIQMAAIAJNJlpS9EWAADAYxHBDuC/PfHEEzp8+LBycnKUkZHh+nnppZdc5xQWFmr//v2u/QEDBmjJkiWaP3++evXqpVdeeUXLli077uJlIaO08Oh28knBiwMAAADwk8YzbZPjmCENAADgqZCbaWsYxgnPyc/Pb3bsqquu0lVXXRWAiAKsdN/RbWbaAgAAwARKK+2SJFtUhGKtkUGOBgAAIPyE3EzbX5zGM22TmGkLAACA8OecaZvSJloWiyXI0QAAAIQfirbBduibo9u0RwAAAECYMwzD1dM2OY5+tgAAAN6gaBtsTWba0h4BAAAA4a2ipk72+oaWZyksQgYAAOAVirbB5uxpa4mUEjoFNxYAAADAR4eO2F3byRRtAQAAvELRNtgO/Vy0TewoRYbcunAAAACARw7+3BpBkpLjrEGMBAAAIHxRtA2m6sNSdWnDNouQAQAAwAQOHWlctGWmLQAAgDco2gZTk362FG0BAAAQ/g41mmlLT1sAAADvULQNJmdrBIlFyAAAAGAKBxvPtKVoCwAA4BWKtsHUeKZtMjNtAQAAEP6azLSlPQIAAIBXKNoGU2njmbYUbQEAABD+Dh6xu7aT27AQGQAAgDco2gZTk562tEcAAABA+Gu8EBk9bQEAALxD0TaYnD1tI6OlthnBjQUAAADwg4ON2iMk0x4BAADAKxRtg8UwjrZHSOwsRZAKAAAAhD/nTNtYa6RirJFBjgYAACA8USkMlqpDUm1FwzatEQAAAGAShyobetrSGgEAAMB7FG2D5dA3R7eTWYQMAAAA4c8wDB36uT0Ci5ABAAB4j6JtsLAIGQAAAEymrLpO9Q5DEv1sAQAAfEHRNlic/WwlKYmZtgAAAAh/zn62Eu0RAAAAfEHRNlgONSraJncNWhgAAACAvxysPFq0ZaYtAACA9yjaBgvtEQAAAGAyjWfaUrQFAADwHkXbYHG2R4iKldp0CG4sAAAAgB8cbNIegYXIAAAAvEXRNhgM4+hM26QuksUS3HgAAAAAPyittLu2k+lpCwAA4DWKtsFQUSLVVTdsJ7MIGQAAAMyhcU/bFNojAAAAeI2ibTCUNlqELImiLQAAAMyhtFHRNomiLQAAgNco2gYDi5ABAADAhCpq6l3b8baoIEYCAAAQ3ijaBsOhb45u0x4BAAAAJlFVW+fajo2ODGIkAAAA4Y2ibTDQHgEAAAAmVFl7dKZtHEVbAAAAr1G0DQbaIwAAAMCEGhdtY60UbQEAALxF0TYYDv0809aWIMUmBzcWAAAA+F1BQYGGDx+uzMxMWSwWLVu2zO1rP/jgA0VFRemcc84JWHyBUvVz0TbGGqGICEuQowEAAAhfFG1bm8Mhle9v2E7qIlkYzAIAAJjNkSNH1KtXL82bN8+j60pLSzV69GhdcsklAYossCrtDT1t46JZhAwAAMAXjKZaW0SENOU76fB3Uu2RYEcDAACAABg6dKiGDh3q8XXjxo3Tddddp8jISI9m54YK50xbWiMAAAD4hqJtMERapZRuwY4CAAAAIeTZZ5/V119/rcWLF+uvf/3rCc+vqalRTU2Na7+srEySZLfbZbfb/RaX817u3NPZ0zYuOsKvMcB3nuQRoY1cmgN5NAfyaA6tnUd3n0PRFgAAAAiyL7/8Uvfcc4/ef/99RUW5N0SfMWOGpk2b1uz4qlWrFBcX5+8QlZeXd9zXDUOqqo2UZFFtZYVWrFjh9xjguxPlEeGDXJoDeTQH8mgOrZXHyspKt86jaAsAAAAEUX19va677jpNmzZNp556qtvXTZkyRZMnT3btl5WVqXPnzhoyZIgSEhL8Fp/dbldeXp4GDx4sq9V6zPOqautlbFgtScrokKLf/Kav32KA79zNI0IfuTQH8mgO5NEcWjuPzm9HnQhFWwAAACCIysvLtXnzZm3btk0TJkyQJDkcDhmGoaioKK1atUoXX3xxs+tsNptsNluz41arNSAfOE5037Iah2u7jS0wMcB3gfr9QOsjl+ZAHs2BPJpDa+XR3WdQtAUAAACCKCEhQZ9++mmTY48//rjWrFmjV155Rd26hcdaCM5+tpIUG81CZAAAAL6gaAsAAAD4WUVFhfbs2ePa37t3r7Zv366UlBR16dJFU6ZMUVFRkRYtWqSIiAidddZZTa5PTU1VTExMs+OhrMp+tGgbR9EWAADAJxRtAQAAAD/bvHmzLrroIte+s/fsmDFjtHDhQu3fv1+FhYXBCi8gGs+0jYvmYwYAAIAvGE0BAAAAfpaTkyPDMI75+sKFC497/f3336/777/fv0EFWGVtnWub9ggAAAC+iQh2AAAAAADCX1XjmbZWirYAAAC+oGgLAAAAwGcsRAYAAOA/FG0BAAAA+KxxewR62gIAAPiGoi0AAAAAnzVdiIyZtgAAAL6gaAsAAADAZ7RHAAAA8B+KtgAAAAB8VsVMWwAAAL+haAsAAADAZ7RHAAAA8B+KtgAAAAB8VmU/uhBZrJWFyAAAAHxB0RYAAACAz5hpCwAA4D8UbQEAAAD4jKItAACA/1C0BQAAAOCzxguRxVK0BQAA8AlFWwAAAAA+q6w92tM2LpqetgAAAL6gaAsAAADAZ872CNFREYqMsAQ5GgAAgPBG0RYAAACAz6rsDUVb+tkCAAD4jqItAAAAAJ85Z9rGWSnaAgAA+IqiLQAAAACfORciYxEyAAAA31G0BQAAAOATwzBcC5GxCBkAAIDvKNoCAAAA8ElNnUMOo2GbmbYAAAC+o2gLAAAAwCfO1ggSC5EBAAD4A0VbAAAAAD6ptFO0BQAA8CeKtgAAAAB8UvVzP1tJirXS0xYAAMBXFG0BAAAA+KSS9ggAAAB+RdEWAAAAgE8o2gIAAPgXRVsAAAAAPmm8EFksRVsAAACfUbQFAAAA4BNm2gIAAPgXRVsAAAAAPqlsvBBZNAuRAQAA+IqiLQAAAACfVNkbzbS1MtMWAADAVxRtAQAAAPiE9ggAAAD+RdEWAAAAgE8qWYgMAADAryjaAgAAAPBJVaOetnH0tAUAAPAZRVsAAAAAPqE9AgAAgH9RtAUAAADgkyraIwAAAPhVyBVtCwoKNHz4cGVmZspisWjZsmXHPT8/P18Wi6XZT3FxcesEDAAAAPzCMdMWAADAv0KuaHvkyBH16tVL8+bN8+i6Xbt2af/+/a6f1NTUAEUIAAAAoLFKe6OirZWetgAAAL4KuRHV0KFDNXToUI+vS01NVVJSkv8DAgAAAHBcjRcioz0CAACA70KuaOutc845RzU1NTrrrLN0//33a+DAgcc8t6amRjU1Na79srIySZLdbpfdbvdrXM77+fu+aF3k0RzIozmQR3Mgj+bQ2nnk9yV0OdsjREVYFB0Vcl/mAwAACDthX7TNyMjQk08+qT59+qimpkYLFixQTk6ONm7cqHPPPbfFa2bMmKFp06Y1O75q1SrFxcUFJM68vLyA3BetizyaA3k0B/JoDuTRHForj5WVla3yHHjOuRAZs2wBAAD8I+yLtqeddppOO+001/6AAQP01Vdfafbs2fr3v//d4jVTpkzR5MmTXftlZWXq3LmzhgwZooSEBL/GZ7fblZeXp8GDB8tqtfr13mg95NEcyKM5kEdzII/m0Np5dH47CqHHOdO2TXTYf7wAAAAICaYcVfXr10/r1q075us2m002m63ZcavVGrAPHIG8N1oPeTQH8mgO5NEcyKM5tFYe+V0JXZU/97SNY6YtAACAX5iy4dT27duVkZER7DAAAACAX4QqO+0RAAAA/CnkZtpWVFRoz549rv29e/dq+/btSklJUZcuXTRlyhQVFRVp0aJFkqR//vOf6tatm84880xVV1drwYIFWrNmjVatWhWstwAAAAD8YtjrHbLXG5KYaQsAAOAvIVe03bx5sy666CLXvrP37JgxY7Rw4ULt379fhYWFrtdra2v1xz/+UUVFRYqLi9PZZ5+td999t8k9AAAAAASGs5+tJMXS0xYAAMAvQm5UlZOTI8Mwjvn6woULm+zffffduvvuuwMcFQAAAICWVDUq2sZZmWkLAADgD6bsaQsAAACgdTgXIZNojwAAAOAvFG0BAAAAeK1pewSKtgAAAP5A0RYAAACA16rsjdojULQFAADwC4q2AAAAALzGQmQAAAD+R9EWAAAAgNeq6GkLAADgdxRtAQAAAHit8UxbirYAAAD+QdEWAAAAgNeatEewUrQFAADwB4q2AAAAALxW1WSmLT1tAQAA/IGiLQAAAOBnBQUFGj58uDIzM2WxWLRs2bLjnv/aa69p8ODB6tChgxISEpSdna2VK1e2TrA+oj0CAACA/1G0BQAAAPzsyJEj6tWrl+bNm+fW+QUFBRo8eLBWrFihLVu26KKLLtLw4cO1bdu2AEfqu0r70YXIYinaAgAA+AXfXwIAAAD8bOjQoRo6dKjb5//zn/9ssv/QQw/pjTfe0FtvvaWsrCw/R+dfVcy0BQAA8DuKtgAAAECIcTgcKi8vV0pKyjHPqampUU1NjWu/rKxMkmS322W32/0Wi/Nex7pnRfXR41aL4ddnw39OlEeED3JpDuTRHMijObR2Ht19DkVbAAAAIMT84x//UEVFha6++upjnjNjxgxNmzat2fFVq1YpLi7O7zHl5eW1ePzrwgg5u65t+KBAu21+fzT86Fh5RPghl+ZAHs2BPJpDa+WxsrLSrfMo2gIAAAAhZMmSJZo2bZreeOMNpaamHvO8KVOmaPLkya79srIyde7cWUOGDFFCQoLf4rHb7crLy9PgwYNltVqbvf7aT1uln36UJA3LHaTkuGi/PRv+c6I8InyQS3Mgj+ZAHs2htfPo/HbUiVC0BQAAAELEiy++qJtvvllLly7VoEGDjnuuzWaTzdZ8WqvVag3IB45j3bfK7nBtJ8TFyGqlr20oC9TvB1ofuTQH8mgO5NEcWiuP7j4jIsBxAAAAAHDDCy+8oBtuuEEvvPCChg0bFuxw3OZciCzCItmi+HgBAADgD8y0BQAAAPysoqJCe/bsce3v3btX27dvV0pKirp06aIpU6aoqKhIixYtktTQEmHMmDF69NFH1b9/fxUXF0uSYmNjlZiYGJT34K7K2jpJUlx0lCwWS5CjAQAAMAf+FA4AAAD42ebNm5WVlaWsrCxJ0uTJk5WVlaX77rtPkrR//34VFha6zp8/f77q6uo0fvx4ZWRkuH4mTpwYlPg94ZxpGxtNWwQAAAB/YaYtAAAA4Gc5OTkyDOOYry9cuLDJfn5+fmADCqBKe0PRNo6iLQAAgN8w0xYAAACA1yqdM21ZgAwAAMBvKNoCAAAA8Eq9w1BtnUMSM20BAAD8iaItAAAAAK84FyGTGhYiAwAAgH8wsgIAAADgFeciZBILkQEAEArq6+tlt9uDHUZYsdvtioqKUnV1terr6098wQlYrVZFRvo+LqJoCwAAAMArlY2KtrRHAAAgeAzDUHFxsUpLS4MdStgxDEPp6en69ttvZbFY/HLPpKQkpaen+3Q/irYAAAAAvELRFgCA0OAs2KampiouLs5vxcdfAofDoYqKCsXHxysiwrdOsoZhqLKyUiUlJZKkjIwMr+9F0RYAAACAV6rsR3vaxlr5aAEAQDDU19e7Crbt2rULdjhhx+FwqLa2VjExMT4XbSUpNjZWklRSUqLU1FSvWyWwEBkAAAAArzDTFgCA4HP2sI2LiwtyJHBy5sKX/sIUbQEAAAB4pZKFyAAACBm0RAgd/sgFRVsAAAAAXqlipi0AAPBBTk6OJk2aFOwwQhJFWwAAAABeoT0CAAAIJYWFhRo2bJji4uKUmpqqu+66S3V1dce95uDBg7rllluUlJSkpKQk3XTTTaqoqGiliI+N1QIAAAAAeKWyttFCZNF8tAAAAMFTX1+vYcOGKT09XR9++KH279+v0aNHy2q16qGHHjrmdaNGjVJRUZFWrlyp+vp63XDDDRo7dqyWLFnSitE3x0xbAAAAAF5p0h7BykxbAADgubq6Ok2YMEGJiYlq3769pk6dKsMwPL7PqlWrtHPnTi1evFjnnHOOhg4dqgceeEDz5s1TbW1ti9d8/vnnWrlypR577DH1799f559/vubMmaMXX3xR33//va9vzScUbQEAAAB4pdJOewQAAOCb5557TlFRUdq0aZMeffRRzZo1SwsWLJAkjRs3TvHx8cf9cVq/fr169uyptLQ017Hc3FyVlZXps88+a/HZ69evV1JSkrKyslzHBg0apIiICG3cuDFA79g9fIcJAAAAgFcaz7SNpWgLAEDIGD5nnX4or2n153Zoa9Nbvz/fo2s6d+6s2bNny2Kx6LTTTtOnn36q2bNn65ZbbtH06dN15513unWf4uLiJgVbSa794uLiY16Tmpra5FhUVJRSUlKOeU1roWgLAAAAwCuNe9rG0dMWAICQ8UN5jYrLqoMdhlvOO+88WSwW1352drZmzpyp+vp6paamNiuq/lIwsgIAAADglcpa2iMAABCKOrS1meK548aN0+LFi497TkVFhSQpPT1dmzZtavLagQMHXK+1JD09XSUlJU2O1dXV6eDBg8e8prVQtAUAAADgFdojAAAQmjxtURBM/907dsOGDerevbsiIyM9ao+QnZ2tBx98UCUlJa7ZuXl5eUpISFCPHj2OeU1paam2b9+uCy64QJK0Zs0aORwO9e/f34d35TuKtgAAAAC8wkxbAADgq8LCQk2ePFm33nqrtm7dqjlz5mjmzJmS5FF7hCFDhqhHjx66/vrr9fDDD6u4uFh//vOfNX78eNlsDTOAN23apNGjR2v16tXq2LGjzjjjDOXm5mrixIn617/+pfr6ek2YMEHXXHONMjMzA/ae3UHRFgAAAIBXKu1Hi7YxURRtAQCA50aPHq2qqir169dPkZGRmjhxosaOHevxfSIjI7V8+XLddtttys7OVps2bTRmzBhNnz7ddU5lZaV27dolu93uOrZ48WKNGzdOgwcPVkREhK688ko99thjfnlvvqBoCwAAAMArVT8vRBYXHamICMsJzgYAAGgqPz/ftf3EE0/4fL+TTjpJK1asOObrOTk5MgyjybGUlBQtWLBACQkJioiI8DkGfwmdSAAAAACEFWd7BFojAAAA+BdFWwAAAABecS5ExiJkAAAA/kXRFgAAAIBXXDNtrXRdAwAA8CeKtgAAAAA85nAYqrIz0xYAACAQKNoCAAAA8Fh1Xb1rm562AAAA/kXRFgAAAIDHnK0RJIq2AAAA/kbRFgAAAIDHqhoVbWOj6WkLAADgTxRtAQAAAHisyUxbKzNtAQAA/ImiLQAAAACPVdbWubZZiAwAAMC/KNoCAAAA8FgVPW0BAICPcnJyNGnSpGCHEZIo2gIAAADwGAuRAQCAUFNYWKhhw4YpLi5Oqampuuuuu1RXV3fM8/Pz8xUZGank5GRFRkbKYrG4fj766CNJ0jfffNPkuPNnw4YNAX0vrBgAAAAAwGOVdhYiAwAAoaO+vl7Dhg1Tenq6PvzwQ+3fv1+jR4+W1WrVQw891OI1AwYMUFFRkcrLy9W2bVtFRERo6tSpWr16tfr06dPk3HfffVdnnnmma79du3YBfT/MtAUAAADgsapGPW2ZaQsAALxVV1enCRMmKDExUe3bt9fUqVNlGIbH91m1apV27typxYsX65xzztHQoUP1wAMPaN68eaqtrW3xmujoaKWnpystLU3p6elq166d3njjDd1www2yWCxNzm3Xrp3S09NdP1ar1av36y6KtgAAAAA8RnsEAADgD88995yioqK0adMmPfroo5o1a5YWLFggSRo3bpzi4+OP++O0fv169ezZU2lpaa5jubm5Kisr02effeZWLG+++aZ++ukn3XDDDc1eu+yyy5Samqrzzz9fb775po/v+sT4HhMAAAAAjzUu2sZaKdoCABBS/nWhVFHS+s+NT5VuXevRJZ07d9bs2bNlsVh02mmn6dNPP9Xs2bN1yy23aPr06brzzjvduk9xcXGTgq0k135xcbFb93j66aeVm5urTp06uY7Fx8dr5syZGjhwoCIiIvTqq6/qiiuu0LJly3TZZZe5+S49R9EWAAAAgMeqmsy05WMFAAAhpaJEKv8+2FG45bzzzmvSiiA7O1szZ85UfX29UlNTlZqa2ipxfPfdd1q5cqVefvnlJsfbt2+vyZMnu/b79u2r77//Xo888ghFWwAAAAChpclMW9ojAAAQWuJbp9AZ6OeOGzdOixcvPu45FRUVkqT09HRt2rSpyWsHDhxwvXYiCxcuVLt27dwqxPbv3195eXknPM8XFG0BAAAAeKzKzkJkAACELA9bFATTxo0bm+xv2LBB3bt3V2RkpEftEbKzs/Xggw+qpKTENTs3Ly9PCQkJ6tGjx3GvNQxDCxcu1OjRo91aYGz79u3KyMhwKy5vUbQFAAAA4DEWIgMAAP5QWFioyZMn69Zbb9XWrVs1Z84czZw5U5I8ao8wZMgQ9ejRQ9dff70efvhhFRcX689//rPGjx8vm80mSdq0aZNGjx6t1atXq2PHjq5rCwoKtHfvXt18883N7vvcc88pOjpaWVlZkqTXXntNzzzzjGuxtEChaAsAAADAY7RHAAAA/jB69GhVVVWpX79+ioyM1MSJEzV27FiP7xMZGanly5frtttuU3Z2ttq0aaMxY8Zo+vTprnMqKyu1a9cu2e32Jtf++9//1oABA3T66ae3eO8HHnhA+/btU1RUlE4//XS99NJL+t3vfudxjJ6gaAsAAADAYyxEBgAAfJWfn+/afuKJJ3y+30knnaQVK1Yc8/WcnBwZhtHs+IIFC5SQkNDiNWPGjNGYMWN8js1TEa3+RAAAAABhr7L2aE/bWCszbQEAAPyJoi0AAAAAjznbI9iiIhQZYQlyNAAAAOZC0RYAAACAx6rsDUVbFiEDAADwP4q2AAAAADzmnGlLP1sAAAD/o2gLAAAAwGPOhchimWkLAADgdxRtAQAAAHjEMAzXQmS0RwAAAPA/irYAAAAAPFJT55DDaNiOtVK0BQAA8DeKtgAAAAA84uxnKzHTFgAAIBAo2gIAAADwiLM1gsRCZAAAAIEQckXbgoICDR8+XJmZmbJYLFq2bNkJr8nPz9e5554rm82mU045RQsXLgx4nAAAAMCxmH1MW9Vopi0LkQEAAG/l5ORo0qRJwQ4jJIVc0fbIkSPq1auX5s2b59b5e/fu1bBhw3TRRRdp+/btmjRpkm6++WatXLkywJECAAAALTP7mJb2CAAAIBT94Q9/UO/evWWz2XTOOee4dU11dbXuvPNOdejQQfHx8bryyit14MCBwAbqhpD7LtPQoUM1dOhQt89/8skn1a1bN82cOVOSdMYZZ2jdunWaPXu2cnNzAxUmAAAAcExmH9NWMtMWAACEqBtvvFEbN27UJ5984tb5kydP1jvvvKOXXnpJycnJmjBhgkaMGKEPPvggwJEeX8gVbT21fv16DRo0qMmx3Nzc406trqmpUU1NjWu/rKxMkmS322W32/0an/N+/33f3z6xQT9U1LR0CUKRIVXXROqhHWslS7CDgdfIozmQR3Mgj+bwcx7nf7Ney27PDvjj/D1OCyWhPKZtaTxbXnX0ubZIi6lzYxbH+lyC8EMuzYE8mkOo5NFut8swDDkcDjkcjqDG4g273a7x48dr8eLFslqtGjdunKZNmyaLxfMPCv/85z8lSSUlJfrkk09O+L/H4cOH9cwzz+ipp57SRRddJIvFoqefflpnnnmmPvzwQ5133nnevCU5HA4ZhiG73a7IyKZ/4Hb39yXsi7bFxcVKS0trciwtLU1lZWWqqqpSbGxss2tmzJihadOmNTu+atUqxcXFBSTOvLy8Jvvf/hipw7V8Sg0vFh2updAe/sijOZBHcyCP5mCRfirTihUrAv6kysrKgD8jWMJhTNt4PLvtR4ukhg8g+77arRVVu/z+PATGf38uQfgil+ZAHs0h2HmMiopSenq6KioqVFtbG9RYPFVXV6dFixZp1KhRevfdd7Vt2zbdcccd6tChg8aMGaM77rhDS5cuPe49vvvuu2bHampqVF9f7/qj9rG8//77stvtysnJUXl5uSQpMzNTnTp1Un5+vnr06OHV+6qtrVVVVZUKCgpUV1fX5DV3x7RhX7T1xpQpUzR58mTXfllZmTp37qwhQ4YoISHBr8+y2+3Ky8vT4MGDZbVaXcef2rdBMcy0DR+GVF1TrRhbDDPCwhl5NAfyaA7k0Rx+zmOndgn6zW8CP9P2RIPuX5rWGtO2NJ7tXlKh5C4lqrLXK+fU9up9UrLfnofAONbnEoQfcmkO5NEcQiWP1dXV+vbbbxUfH6+YmBhJ0rVvX6sfq39s9Vjax7TXC8NecPv8qKgode7cWXPnzpXFYlHv3r311Vdf6V//+pd+//vfa8aMGZoyZcpx79HSuMdmsykyMvKEY6KysjJFR0crMTFRbdu2dc3uzcjIUGlpqddjqurqasXGxuqCCy5w5aTxM90R9kXb9PT0Zs2BDxw4oISEhBZnJEgNibPZbM2OW63WgP0j++97L//DrwPyHASG3W7XihUr9JvfXMj/oYYx8mgO5NEcyKM5HM1jdqvk0cy/K+Ewpm183x4dk9WjI4XacBTIzzxoXeTSHMijOQQ7j/X19bJYLIqIiFBERIQk6cfqH1VSWRKUeJwxuOu8885r0kJgwIABmjVrlgzDUHp6utLT0z2OwVl8PVEsjV93/m94rH1PREREyGKxtPi74e7vStgXbbOzs5t9HS8vL0/Z2YGf7QEAAAD4A2NaAADgT+1j25viuePGjdPixYuPe05FRYXX909PT1dtba0OHz7cZFbtgQMHvCoW+1PIFW0rKiq0Z88e1/7evXu1fft2paSkqEuXLpoyZYqKioq0aNEiSQ3Jmzt3ru6++27deOONWrNmjV5++WW9/fbbwXoLAAAA+IVjTAsAAILppf/3UrBDcNvGjRub7G/YsEHdu3dXZGSkpk+frjvvvDNgz+7du7esVqvWrl2rUaNGSZJ27dqlwsLCoP/xPOSKtps3b9ZFF13k2nf26RozZowWLlyo/fv3q7Cw0PV6t27d9Pbbb+uOO+7Qo48+qk6dOmnBggXKzc1t9dgBAAAAiTEtAACAuwoLCzV58mTdeuut2rp1q+bMmaOZM2dKklJTU5Wamur2vfbs2aOKigoVFxerqqpK27dvlyT16NFD0dHRKioq0iWXXKJFixapX79+SkxM1I033qh7771XHTt2VFJSkn7/+98rOztb5513XiDerttCrmibk5MjwzCO+frChQtbvGbbtm0BjAoAAABwH2NaAAAA94wePVpVVVXq16+fIiMjNXHiRI0dO9are918881au3ataz8rK0tSw7eeunbtKrvdrl27dqmystJ1zqxZs1RXV6errrpKNTU1ys3N1eOPP+7bm/KDkCvaAgAAAAAAADC//Px81/YTTzzh1/u1pGvXrs3+sB4TE6N//OMfmj9/vtcLjwVC6EQCAAAAAAAAAKBoCwAAAAAAAAChhKItAAAAAAAAAIQQirYAAAAAAAAAEEIo2gIAAAAAAABACKFoCwAAAAAAAIQ5wzCCHQJ+5o9cULQFAAAAAAAAwpTVapUkVVZWBjkSODlz4cyNN6L8FQwAAAAAAACA1hUZGamkpCSVlJRIkuLi4mSxWIIcVfhwOByqra1VdXW1IiJ8m99qGIYqKytVUlKipKQkRUZGen0virYAAAAAAABAGEtPT5ckV+EW7jMMQ1VVVYqNjfVbsTspKcmVE29RtAUAAAAAAADCmMViUUZGhlJTU2W324MdTlix2+0qKCjQBRdc4FM7Ayer1erTDFsnirYAAAAAAACACURGRvqlYPhLEhkZqbq6OsXExPilaOsvLEQGAAAAAAAAACGEoi0AAAAAAAAAhBCKtgAAAAAAAAAQQuhpq4ZV4iSprKzM7/e22+2qrKxUWVlZSPXFgGfIozmQR3Mgj+ZAHs2htfPoHKs5x25oKlBjWv69mgN5NA9yaQ7k0RzIozmE6piWoq2k8vJySVLnzp2DHAkAAABOpLy8XImJicEOI+QwpgUAAAgfJxrTWgymKsjhcOj7779X27ZtZbFY/HrvsrIyde7cWd9++60SEhL8em+0HvJoDuTRHMijOZBHc2jtPBqGofLycmVmZioigi5f/y1QY1r+vZoDeTQPcmkO5NEcyKM5hOqYlpm2kiIiItSpU6eAPiMhIYF/wCZAHs2BPJoDeTQH8mgOrZlHZtgeW6DHtPx7NQfyaB7k0hzIozmQR3MItTEtUxQAAAAAAAAAIIRQtAUAAAAAAACAEELRNsBsNpv+8pe/yGazBTsU+IA8mgN5NAfyaA7k0RzI4y8DeTYH8mge5NIcyKM5kEdzCNU8shAZAAAAAAAAAIQQZtoCAAAAAAAAQAihaAsAAAAAAAAAIYSiLQAAAAAAAACEEIq2ATRv3jx17dpVMTEx6t+/vzZt2hTskHAcM2bMUN++fdW2bVulpqbqiiuu0K5du5qcU11drfHjx6tdu3aKj4/XlVdeqQMHDgQpYrjjb3/7mywWiyZNmuQ6Rh7DQ1FRkUaNGqV27dopNjZWPXv21ObNm12vG4ah++67TxkZGYqNjdWgQYP05ZdfBjFi/Lf6+npNnTpV3bp1U2xsrE4++WQ98MADatxOnzyGpoKCAg0fPlyZmZmyWCxatmxZk9fdydvBgwc1cuRIJSQkKCkpSTfddJMqKipa8V3AXxjThhfGtObDeDa8MaYNf4xpw5MZxrMUbQPkpZde0uTJk/WXv/xFW7duVa9evZSbm6uSkpJgh4ZjWLt2rcaPH68NGzYoLy9PdrtdQ4YM0ZEjR1zn3HHHHXrrrbe0dOlSrV27Vt9//71GjBgRxKhxPB999JH+9a9/6eyzz25ynDyGvkOHDmngwIGyWq36z3/+o507d2rmzJlKTk52nfPwww/rscce05NPPqmNGzeqTZs2ys3NVXV1dRAjR2N///vf9cQTT2ju3Ln6/PPP9fe//10PP/yw5syZ4zqHPIamI0eOqFevXpo3b16Lr7uTt5EjR+qzzz5TXl6eli9froKCAo0dO7a13gL8hDFt+GFMay6MZ8MbY1pzYEwbnkwxnjUQEP369TPGjx/v2q+vrzcyMzONGTNmBDEqeKKkpMSQZKxdu9YwDMMoLS01rFarsXTpUtc5n3/+uSHJWL9+fbDCxDGUl5cb3bt3N/Ly8owLL7zQmDhxomEY5DFc/N///Z9x/vnnH/N1h8NhpKenG4888ojrWGlpqWGz2YwXXnihNUKEG4YNG2bceOONTY6NGDHCGDlypGEY5DFcSDJef/111747edu5c6chyfjoo49c5/znP/8xLBaLUVRU1Gqxw3eMacMfY9rwxXg2/DGmNQfGtOEvXMezzLQNgNraWm3ZskWDBg1yHYuIiNCgQYO0fv36IEYGTxw+fFiSlJKSIknasmWL7HZ7k7yefvrp6tKlC3kNQePHj9ewYcOa5Esij+HizTffVJ8+fXTVVVcpNTVVWVlZeuqpp1yv7927V8XFxU3ymJiYqP79+5PHEDJgwACtXr1au3fvliR9/PHHWrdunYYOHSqJPIYrd/K2fv16JSUlqU+fPq5zBg0apIiICG3cuLHVY4Z3GNOaA2Pa8MV4NvwxpjUHxrTmEy7j2ahWecovzI8//qj6+nqlpaU1OZ6WlqYvvvgiSFHBEw6HQ5MmTdLAgQN11llnSZKKi4sVHR2tpKSkJuempaWpuLg4CFHiWF588UVt3bpVH330UbPXyGN4+Prrr/XEE09o8uTJ+tOf/qSPPvpIf/jDHxQdHa0xY8a4ctXSf2fJY+i45557VFZWptNPP12RkZGqr6/Xgw8+qJEjR0oSeQxT7uStuLhYqampTV6PiopSSkoKuQ0jjGnDH2Pa8MV41hwY05oDY1rzCZfxLEVboAXjx4/Xjh07tG7dumCHAg99++23mjhxovLy8hQTExPscOAlh8OhPn366KGHHpIkZWVlaceOHXryySc1ZsyYIEcHd7388st6/vnntWTJEp155pnavn27Jk2apMzMTPIIAK2AMW14YjxrHoxpzYExLYKF9ggB0L59e0VGRjZbvfPAgQNKT08PUlRw14QJE7R8+XK999576tSpk+t4enq6amtrVVpa2uR88hpatmzZopKSEp177rmKiopSVFSU1q5dq8cee0xRUVFKS0sjj2EgIyNDPXr0aHLsjDPOUGFhoSS5csV/Z0PbXXfdpXvuuUfXXHONevbsqeuvv1533HGHZsyYIYk8hit38paent5soaq6ujodPHiQ3IYRxrThjTFt+GI8ax6Mac2BMa35hMt4lqJtAERHR6t3795avXq165jD4dDq1auVnZ0dxMhwPIZhaMKECXr99de1Zs0adevWrcnrvXv3ltVqbZLXXbt2qbCwkLyGkEsuuUSffvqptm/f7vrp06ePRo4c6domj6Fv4MCB2rVrV5Nju3fv1kknnSRJ6tatm9LT05vksaysTBs3biSPIaSyslIREU2HGpGRkXI4HJLIY7hyJ2/Z2dkqLS3Vli1bXOesWbNGDodD/fv3b/WY4R3GtOGJMW34YzxrHoxpzYExrfmEzXi2VZY7+wV68cUXDZvNZixcuNDYuXOnMXbsWCMpKckoLi4Odmg4httuu81ITEw08vPzjf3797t+KisrXeeMGzfO6NKli7FmzRpj8+bNRnZ2tpGdnR3EqOGOxqvtGgZ5DAebNm0yoqKijAcffND48ssvjeeff96Ii4szFi9e7Drnb3/7m5GUlGS88cYbxieffGJcfvnlRrdu3YyqqqogRo7GxowZY3Ts2NFYvny5sXfvXuO1114z2rdvb9x9992uc8hjaCovLze2bdtmbNu2zZBkzJo1y9i2bZuxb98+wzDcy9ull15qZGVlGRs3bjTWrVtndO/e3bj22muD9ZbgJca04YcxrTkxng1PjGnNgTFteDLDeJaibQDNmTPH6NKlixEdHW3069fP2LBhQ7BDwnFIavHn2WefdZ1TVVVl3H777UZycrIRFxdn/Pa3vzX2798fvKDhlv8e5JLH8PDWW28ZZ511lmGz2YzTTz/dmD9/fpPXHQ6HMXXqVCMtLc2w2WzGJZdcYuzatStI0aIlZWVlxsSJE40uXboYMTExxq9+9Svj3nvvNWpqalznkMfQ9N5777X4/4ljxowxDMO9vP3000/Gtddea8THxxsJCQnGDTfcYJSXlwfh3cBXjGnDC2Nac2I8G74Y04Y/xrThyQzjWYthGEbrzOkFAAAAAAAAAJwIPW0BAAAAAAAAIIRQtAUAAAAAAACAEELRFgAAAAAAAABCCEVbAAAAAAAAAAghFG0BAAAAAAAAIIRQtAUAAAAAAACAEELRFgAAAAAAAABCCEVbAAAAAAAAAAghFG0BAAAAAAAAIIRQtAWAY/jmm29ksViO+1NaWhrsMAEAAIBjYkwLAOEpKtgBAECoO/nkkzVq1KgWX4uJiWnlaAAAAADPMaYFgPBC0RYATuCUU07R/fffH+wwAAAAAK8xpgWA8EJ7BADwwcKFC2WxWLRw4UK99dZbGjhwoNq2bauuXbu6zqmtrdWsWbN07rnnqk2bNmrbtq1+/etf680332zxnt9++62uvfZapaSkKD4+XhdeeKEKCgp0//33y2KxKD8/v8Xn/7f8/HxZLJYWB+d79+7VzTffrC5dushmsykjI0P/+7//q3379jU712KxKCcnRwcOHNCYMWPUvn17xcbG6rzzzmsSS2Pl5eWaNm2azj77bMXFxSkxMVFZWVmaOnWq7Ha7Dh8+rDZt2ujMM89s8XqHw6GuXbsqOTlZVVVVLZ4DAAAA/2BMm9/sfIkxLYDgomgLAH6wdOlSjRgxQqmpqbr99ts1dOhQSVJNTY1yc3P1xz/+UYZh6KabbtKoUaO0b98+XX755Zo7d26T++zfv1/Z2dl68cUX1a9fP/3hD39QSkqKBg8erA0bNvgl1o0bNyorK0vPPfecevfurYkTJ+rXv/61nn/+efXr109ff/11s2tKS0t1/vnn67PPPtP111+vESNGaPPmzcrNzdWOHTuanFtSUqJ+/frp/vvvV2RkpG677TbdeOONSk9P19///ncdOXJEiYmJuuaaa7Rz5059+OGHzZ6Xl5enffv2aeTIkYqNjfXL+wYAAMDxMaY9ijEtgGCjPQIAnMCePXta/Mv+pZde6tp+5513tHLlSg0aNKjJOdOnT1d+fr6mTp2qadOmyWKxSGr4q/3FF1+sP/7xjxoxYoQyMzMlSVOmTFFRUZH++te/6t5773XdZ/78+br11lt9fi92u13XXHONHA6HNm3apKysLNdr69atU05OjiZOnKi33nqryXUff/yxbr/9ds2ZM0cREQ1/77v44ot18803a+7cuXryySdd595+++364osv9Kc//UkPPvhgk/scOHBA8fHxkqRbb71VzzzzjJ566ikNGDCgyXkLFiyQJN1yyy0+v2cAAAAwppUY0wIIMwYAoEV79+41JB3zZ/bs2cazzz5rSDJ++9vfNru+vr7eSE5ONk4++WTD4XA0e/3NN980JBlz5swxDMMwampqjJiYGCM1NdWoqqpqdq/u3bsbkoz33nvPddz5/GeffbbZ/d977z1DkvGXv/zFdey1114zJBnTp09v8T2PGDHCiIiIMA4fPuw6Jslo06aNUV5e3uRcu91uREVFGeeee67r2P79+w2LxWKcfPLJRm1tbYvPaCwrK8to06ZNk+eVlJQY0dHRRt++fU94PQAAAI6PMW0DxrQAwg0zbQHgBHJzc/XOO++0+Jqz71a/fv2avbZr1y4dOnRImZmZmjZtWrPXf/jhB0nSF1984Tq/urpaF198cbMVfCMiIjRw4EB9+eWXvrwV19fRdu3a1eJMi+LiYjkcDu3evVt9+vRxHT/11FNdswmcoqKilJaWptLSUtexzZs3yzAMXXTRRbJarSeM59Zbb9W4ceO0ZMkSjRs3TpK0aNEi1dbWMiMBAADAjxjTMqYFEF4o2gKAH6SlpTU7dvDgQUnSZ599ps8+++yY1x45ckSSdPjwYUlSamqq28/wlDOm559//rjnOWNySkhIaPG8qKgo1dfXu/ad76Fjx45uxXPdddfpzjvv1IIFC1wD3Kefflrx8fG69tpr3boHAAAA/IMxbQPGtABCAQuRAYAfOPt6NeYcFF555ZUyDOOYP88++6wkKTExUVLDogctOXDgQLNjzl5cdXV1zV5zDjZbiumtt946bkwXXnihO2+7maSkJElSUVGRW+e3bdtWI0eO1JYtW7R9+3Z98MEH+vzzz3XNNdc0mwUBAACAwGJM24AxLYBQQNEWAALkjDPOUEJCgjZv3iy73X7C80899VTFxMRo8+bNqq6ubvKaw+FocUXa5ORkSS0PKLdt29bsWP/+/SVJ69evd+s9eKpPnz6KiIjQe++959Z7luRajOKpp55isQYAAIAQw5iWMS2A4KBoCwABEhUVpdtuu0379u3TnXfe2eKAb8eOHa5ZCDabTVdffbVKSko0c+bMJuctWLBAu3fvbnZ97969ZbFY9OKLLzYZFH/55Zd69NFHm51/+eWXq0uXLpo1a5YKCgqavW6327Vu3TqP36tTWlqarrzySn311Vct9jwrKSlpNoMiKytLffv21fPPP6+lS5fq7LPPbrGfGgAAAFofY1rGtACCg562ABBA06ZN09atW/XYY4/p7bff1gUXXKDU1FQVFRXp008/1ccff6z169e7en797W9/0+rVq/XnP/9Z69atU1ZWlj7//HOtWLFCQ4YM0apVq5rcPzMzU9dee62WLFmi3r1769JLL1VJSYlef/11XXrppXr11VebnG+z2fTKK69o6NChuvDCC3XxxRerZ8+eslgs2rdvn95//321a9fOtZCENx5//HHt2LFDDz74oFasWKGLL75YhmFo9+7dWrVqlQ4cOOD6ypnTuHHjdNNNN0liRgIAAECoYUzLmBZA66NoCwABZLPZ9J///EdPP/20Fi1apFdffVU1NTVKS0tTjx49NG7cOPXs2dN1fkZGhj788EPdfffdWrlypQoKCtS7d2/l5eVpzZo1zQa4UsOMhfbt2+ull17SvHnzdNppp2n+/PnKzMxsNsCVpL59++rjjz/WI488ohUrVuiDDz6QzWZTx44ddcUVV/i8WEL79u21YcMG/eMf/9DSpUs1d+5cxcTEqFu3brrnnnvUpk2bZtdcc801uv322xUREaFRo0b59HwAAAD4F2NaxrQAWp/FMAwj2EEAAE7s/vvv17Rp0/Tee+8pJycn2OH41ebNm9W3b19df/31WrRoUbDDAQAAQIAwpgUA99DTFgAQdI888ogk6bbbbgtyJAAAAIB3GNMC8CfaIwAAgqKwsFBLlizRZ599ppdfflm5ubnKzs4OdlgAAACA2xjTAggUirYAgKD4+uuvNWXKFMXHx2v48OGaP39+sEMCAAAAPMKYFkCg0NMWAAAAAAAAAEIIPW0BAAAAAAAAIIRQtAUAAAAAAACAEELRFgAAAAAAAABCCEVbAAAAAAAAAAghFG0BAAAAAAAAIIRQtAUAAAAAAACAEELRFgAAAAAAAABCCEVbAAAAAAAAAAghFG0BAAAAAAAAIIT8f4xvMa77ZM9pAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 1400x600 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# Generate term frequencies\n",
    "frequencies = np.arange(1, 101)\n",
    "\n",
    "# Define the average document length\n",
    "avg_dl = 50 \n",
    "\n",
    "# Different values for k and b parameters\n",
    "k_values = [0., 1.5, 3.0]\n",
    "b_values = [0., 0.75, 1.0]\n",
    "\n",
    "\n",
    "fig, axs = plt.subplots(1, 2, figsize=(14, 6))\n",
    "\n",
    "# Variation of k parameter\n",
    "for k1 in k_values:\n",
    "    bm25_scores = ((k1 + 1) * frequencies) / (k1 * (1 - 0.75 + 0.75 * frequencies / avg_dl) + frequencies)\n",
    "    axs[0].plot(frequencies, bm25_scores, label=f'k1={k1}', linewidth=2)\n",
    "\n",
    "axs[0].set_title('Variation of k parameter', fontsize=16)\n",
    "axs[0].set_xlabel('Frequency', fontsize=14)\n",
    "axs[0].set_ylabel('Score', fontsize=14)\n",
    "axs[0].legend()\n",
    "axs[0].grid(True)\n",
    "\n",
    "# Variation of b parameter\n",
    "for b in b_values:\n",
    "    bm25_scores = ((1.5 + 1) * frequencies) / (1.5 * (1 - b + b * frequencies / avg_dl) + frequencies)\n",
    "    axs[1].plot(frequencies, bm25_scores, label=f'b={b}', linewidth=2)\n",
    "\n",
    "axs[1].set_title('Variation of b parameter', fontsize=16)\n",
    "axs[1].set_xlabel('Frequency', fontsize=14)\n",
    "axs[1].set_ylabel('Score', fontsize=14)\n",
    "axs[1].legend()\n",
    "axs[1].grid(True)\n",
    "\n",
    "plt.tight_layout()\n",
    "plt.savefig('b_and_k_values.jpg', format='jpeg')\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "69f42f1e-19d3-4e2a-a55f-84ec77059799",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABV8AAALBCAYAAABP6NGtAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdeVxP2f8H8NenfS+VdoXKWjF2RiqSaGzZlyHGTpaGwhBZpoQZmWRXtsZSxgxD9nXsS/ZdaFOMoVLScn9/9Ot++/hUQh9ZXs/Ho8f4nHvuue977zkf492550oEQRBAREREREREREREROVKoaIDICIiIiIiIiIiIvoSMflKREREREREREREJAdMvhIRERERERERERHJAZOvRERERERERERERHLA5CsRERERERERERGRHDD5SkRERERERERERCQHTL4SERERERERERERyQGTr0RERERERERERERywOQrERERERERERERkRww+UpERJ+8mTNnQiKRVHQYxcZRtWpVeHl5ffRYKuq47+LOnTtwc3ODrq4uJBIJtm/fXtEhfdYePHgAiUSCBQsWyP1YERERkEgkePDgwVvrvtkXDx8+DIlEgsOHD8stvg+1fv161KpVC8rKytDT06uQGD7m/fzUODs7w9nZ+YPaKOxnUVFR5RPUO/ia7x0RERG9OyZfiYg+MydOnMDMmTPx/PnzMu+TkZGBGTNmwM7ODpqamjAwMED9+vUxbtw4JCUlifUKk4vGxsbIzMyUaadq1ar47rvvpMokEkmJPyNGjHjv86T3u9efkoEDB+LKlSuYO3cu1q9fj0aNGhVbrzCRUfRHR0cH9evXR2hoKPLy8qTqOzs7l9jnatWqJdYrTCAW/igpKcHc3BxeXl5ITEwEAHh5eZXahwt/PvVEN5XdzZs34eXlBWtra6xcuRIrVqyQ6/F27dqFmTNnyvUYX6qqVauK187Z2fmzG4eFCeIHDx6I33Of8i8liIiISD6UKjoAIiJ6NydOnEBAQAC8vLzKNGMrJycHrVq1ws2bNzFw4EB4e3sjIyMD165dQ2RkJLp27QozMzOpfVJTU7F06VL8+OOPZYqpbdu2GDBggEx5jRo1yrT/20ybNg2TJ08ul7bK261bt6CgIJ/fZZZ2r+V53PKQlZWFkydP4qeffsKYMWPKtE+fPn3QoUMHAMCLFy+wa9cueHt7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V68uTJo0SUhPT5eqX9gXS/opFB4eLgAQzp49K3PMvLw8wdraWrC2thZyc3PF8rNnz5b5OhR17949YcCAAYKJiYmgrKwsmJubC999950QFRX11nhKGncDBw4UNDU1Za7T/PnzhYULFwpVqlQRVFVVBUdHR+HSpUvvFZMgCMLly5cFJycnQU1NTTA3Nxdmz54trF69Wua7JS8vTwgICBBMTU0FdXV1wdnZWbh69apMXyzsY0XHmJOTk1C3bl2ZGAcOHChYWVlJld2/f1/w8PAQ1NXVhcqVKws//vijEB0dLQAQTp06JdYZPHiwYG1tLaipqQn6+vqCi4uLsH//fpljvKm077nQ0FChVq1agrKysmBsbCyMHDlS+O+//6TqlHQuJcnNzRW8vb2FypUrCxKJROyjpY2R4r4Lyno/S9KjRw8BgLB582ax7PXr14KGhoagoqIiZGVlyexTlrFe2jgTBEEICwsTqlWrJqiqqgqNGjUSjh49Kjg5OZX574eSFPaz33//XZgyZYpgZGQkqKurCx4eHsLDhw+l6pb1O/7NMVfoze/+ku5dWFiYAECYOHHiB50bERERfVkkgvCJvVmDiIiIiKiIRYsWYcKECUhISIC5uXlFh0NEREREVGZMvhIRERHRJyMrKwvq6uri51evXuGbb75BXl4ebt++XYGRERERERG9O675SkRERESfDE9PT1haWqJ+/fri2r43b96UeQkYEREREdHngMlXIiIiIvpktGvXDqtWrcLGjRuRl5eHOnXqYNOmTejVq1dFh0ZERERE9M647AARERERERERERGRHChUdABEREREREREREREXyImX4mIiIiIiIiIiIjkgGu+vkV+fj6SkpKgra0NiURS0eEQEREREREREZULQRCQnp4OMzMzKChwfh6RPDD5+hZJSUmoUqVKRYdBRERERERERCQX8fHxsLCwqOgwiL5ITL6+hba2NoCCLyIdHZ0KjubrkpOTg71798LNzQ3KysoVHQ7RJ4HjgkgWxwVR8Tg2iGRxXBBJS0tLQ5UqVcTcBxGVPyZf36JwqQEdHR0mXz+ynJwcaGhoQEdHh/9jRPT/OC6IZHFcEBWPY4NIFscFUfG4zCKR/HBBDyIiIiIiIiIiIiI5YPKViIiIiIiIiIiISA6YfCUiIiIiIiIiIiKSA675+oEEQUBubi7y8vIqOpQvTk5O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dXu/fv0wduxY/Pbbb4iMjIS9vT3s7e2Rn5+Ply9fQlFREefPn4eioqLUflpaWuKf1dXVIZFI5BI/ERERERERERHR++CyA184R0tHWOhYQILiE5MSSFBFpwocLR0/cmT/07lzZ7x69QoxMTGIjIxEv379xG0ODg7Iy8tDamoqbGxspH5MTEwqLGYiIiIiIiIiIqK3YfL1C6eooIgQ9xAAkEnAFn5e5L4IigqKMvt+LJqamujSpQumT5+OGzduoE+fPuI2Gxsb9O3bFwMGDMC2bdsQFxeHM2fOIDAwEH///XeFxUxERERERERERPQ2TL5+BTxreyKqZxTMdcylyi10LBDVMwqetT0rKLL/6devHy5dugRHR0dYWlpKbVuzZg0GDBiAH3/8ETVr1kSXLl1w9uxZmXpERERERERERESfEq75+pXwrO2JzjU749ijY0hOT4aptikcLR3lPuP18OHDMmWCIMiUtW/fvthyAFBWVkZAQAACAgKK3e7l5QUvL68PCZOIiIiIiIiIiKjcMfn6FVFUUIRzVeeKDoOIiIiIiIiIiOirwGUHiIiIiIiIiIiIiOSAyVciIiIiIiIiIiIiOWDylYiIiIiIiIiIiEgOmHz9QCW9JIrofbFPERERERERERF9GZh8fU/KysoAgMzMzAqOhL40hX2qsI8REREREREREdHnSamiA/hcKSoqQk9PD6mpqQAADQ0NSCSSCo7qy5Kfn4/Xr1/j1atXUFD48n9PIAgCMjMzkZqaCj09PSgqKlZ0SERERERERERE9AGYfP0AJiYmACAmYKl8CYKArKwsqKurf1WJbT09PbFvERERERERERHR54vJ1w8gkUhgamoKIyMj5OTkVHQ4X5ycnBwcPXoUrVq1+moewVdWVuaMVyIiIiIiIiKiLwSTr+VAUVGRCTM5UFRURG5uLtTU1L6a5CsREREREREREX05vvyFNImIiIiIiIiIiIgqAJOvRERERERERERERHLA5CsRERERERERERGRHDD5SkRERERERERERCQHTL4SERERERERERERyQGTr0RERERERERERERywOQrERERERERERERkRww+UpEREREREREREQkB0y+EhEREREREREREckBk69EREREREREREREcsDkKxEREREREREREZEcMPlKREREREREREREJAdMvhIRERERERERERHJAZOvRERERERERERERHLA5CsRERERERERERGRHDD5SkRERERERERERCQHn23yNTAwEI0bN4a2tjaMjIzQpUsX3Lp1S6rOq1evMHr0aBgYGEBLSwvdunVDSkpKBUVMREREREREREREX5PPNvl65MgRjB49GqdOncK+ffuQk5MDNzc3vHz5UqwzYcIE7NixA1u3bsWRI0eQlJQET0/PCoyaiIiIiIiIiIiIvhZKFR3A+4qJiZH6HBERASMjI5w/fx6tWrXCixcvsHr1akRGRqJ169YAgPDwcNSuXRunTp1Cs2bNKiJsIiIiIiIiIiIi+kp8tsnXN7148QIAoK+vDwA4f/48cnJy4OrqKtapVasWLC0tcfLkyRKTr9nZ2cjOzhY/p6WlAQBycnKQk5Mjr/CpGIXXm9ed6H84LohkcVwQFY9jg0gWxwWRNI4FIvn7IpKv+fn5GD9+PL799lvY2dkBAB4/fgwVFRXo6elJ1TU2Nsbjx49LbCswMBABAQEy5Xv37oWGhka5xk1ls2/fvooOgeiTw3FBJIvjgqh4HBtEsjguiApkZmZWdAhEX7wvIvk6evRoXL16FcePH//gtqZMmQIfHx/xc1paGqpUqQI3Nzfo6Oh8cPtUdjk5Odi3bx/atm0LZWXlig6H6JPAcUEki+OCqHgcG0SyOC6IpBU+7UtE8vPZJ1/HjBmDnTt34ujRo7CwsBDLTUxM8Pr1azx//lxq9mtKSgpMTExKbE9VVRWqqqoy5crKyvzLuYLw2hPJ4rggksVxQVQ8jg0iWRwXRAU4DojkT6GiA3hfgiBgzJgx+OOPP3Dw4EFUq1ZNanvDhg2hrKyMAwcOiGW3bt3Co0eP0Lx5848dLhEREREREREREX1lPtuZr6NHj0ZkZCT+/PNPaGtri+u46urqQl1dHbq6uvjhhx/g4+MDfX196OjowNvbG82bNy/xZVtERERERERERERE5eWzTb4uXboUAODs7CxVHh4eDi8vLwDAr7/+CgUFBXTr1g3Z2dlo164dwsLCPnKkRERERERERERE9DX6bJOvgiC8tY6amhqWLFmCJUuWfISIiIiIiIiIiIiIiP7ns13zlYiIiIiIiIiIiOhTxuQrERERERERERERkRww+UpEREREREREREQkB0y+EhEREREREREREckBk69EREREREREREREcsDkKxEREREREREREZEcMPlKREREREREREREJAdMvhIRERERERERERHJAZOvRERERERERERERHLA5CsRERERERERERGRHDD5SkRERERERERERCQHTL4SERERERERERERyQGTr0RERERERERERERywOQrERERERERERERkRww+UpEREREREREREQkB0y+EhEREREREREREckBk69EREREREREREREcsDkKxEREREREREREZEcMPlKREREREREREREJAdMvhIRERERERERERHJAZOvRERERERERERERHLA5CsRERERERERERGRHDD5SkRERERERERERCQHTL4SERERERERERERyQGTr0RERERERERERERywOQrERERERERERERkRww+UpEREREREREREQkB0y+EhEREREREREREckBk69EREREREREREREcsDkKxEREREREREREZEcMPlKREREREREREREJAdMvhIRERERERERERHJAZOvRERERERERERERHLA5CsRERERERERERGRHDD5SkRERERERERERCQHTL4SERERERERERERyQGTr0RERERERERERERywOQrERERERERERERkRww+UpEREREREREREQkB0y+EhEREREREREREckBk69EREREREREREREcsDkKxEREREREREREZEcMPlKREREREREREREJAdMvhIRERERERERERHJAZOvRERERERERERERHLA5CsRERERERERERGRHDD5SkRERERERERERCQHTL4SERERERERERERyQGTr0RERERERERERERywOQrERERERERERERkRww+UpEREREREREn5SgoCBMmzatosP4ZMXExOC7774r93bHjx+P0NDQcm/3TRERERgyZIjcj1NWn2J/+1j3guSPyVciIiIiIiKir9CnmHAqK3klH8tLbGwsXFxckJGR8cFt9e7dG1FRUeUQ1efNxcUFx48fr+gwPprZs2dj8ODB4mf2g8+XUkUHQERERERERERERP+jra1d0SFQOWHylYiIiIiIiIhkxMTEIDQ0FDNmzEBoaChSU1Nhb28PPz8/GBgYiPX+/vtvbNmyBcnJyTAxMUG3bt3QuXNncXtqaiqWLl2Ks2fPQkFBAfb29vD29oaJiQkAID8/H8uWLcOuXbugoKAADw8PCIJQYlyxsbGYN28egILZkAAwcOBAeHl5IT09HaGhoThx4gRycnJQr149eHt7w8LCosT2Hj16hPnz5+PWrVswMzODt7c3Jk6ciNmzZ6Nly5YAgPv37yM0NBTXrl2DqqoqnJycMGrUKKirq8u09/jxY0yYMAEA0LFjRwBAu3btMHnyZOTk5GDZsmU4ePAgXr58iZo1a2L06NGoVatWsbGNHz8eKSkpWLJkCZYsWQIAOHTokLj97NmzH3RvipOXl4eQkBDs3bsXSkpK6Ny5MwYNGgSJRAIA2Lt3L6KjoxEfHw81NTU0aNAAY8aMgZ6ennh/JkyYgIULF2L58uV4+PAhbGxs4OfnhypVqhR7zKSkJEycOBFNmzbF2LFjxWMV6t27NwBg+vTpAABjY2Ns2rQJAPDnn39i8+bNePLkCUxMTPD999/Dzc2txPMrS38TBAGRkZHYuXMnnj17BgsLCwwYMABOTk5S5xgYGIiVK1ciPj4eNjY2mDRpEqpVqya2c/ToUaxZswaJiYkwMDCAp6cnevbsKW7/888/sXXrVqSmpkJTUxMODg4ICAgAUHDvbWxsMGbMmLf2g6Jxr127Frt378azZ8+gq6sLJycneHt7A8Bbx0fhmP/pp58QFhaGJ0+eoGnTppg6dSoOHz6M8PBwvHz5Em5ubhg9ejQUFAoeqM/JycGqVatw4MABZGRkoFq1ahg+fDjq169f4n1wcXGBj48PTpw4gYsXL8LY2Bi+vr7Q09PD/PnzcfPmTdjY2GDq1KkwMzOTumal3W8XFxdMnDgRp06dwtmzZ2FoaIhRo0ahRYsWYp24uDgsW7YMly9fhpqaGho3bozRo0dDV1cXe/fuRWhoKKKjo6GsrCzuM23aNGhoaGDq1KklnlNJuOwAERERERERERUrOzsbmzdvxtSpU7F48WIxkVpo//79CA8Px5AhQ7B27VoMHToUq1evxp49ewAAubm58PX1hbq6OhYvXozffvsN6urq8PX1RW5uLgBgy5YtiImJgZ+fH3777TekpaWV+ni5nZ0dxowZAw0NDURHRyM6Ohq9evUCULCUwq1btzB37lwsWbIEgiBg8uTJ4rHelJ+fj2nTpkFNTQ1Lly7Fjz/+iFWrVknVefXqFXx9faGlpYVly5YhICAA58+fR0hISLFtGhkZYdasWQCA9evXIzo6Wkx+LVu2DEeOHMHkyZOxcuVKmJubw9fXF+np6cW2NXv2bFSuXBmDBg0Sz7W87k1J9uzZA0VFRSxbtgze3t7YsmUL/v77b3F7Xl4eBg8ejNWrV2POnDl4/PgxgoKCZNpZtWoVRo0aheXLl0NRUVFMmL/p/v378Pb2Rps2bTBu3DiZxGvhdQMAPz8/REdHi5+PHTuG0NBQ9OrVC+Hh4ejUqRPmzZuHixcvlnh+ZelvGzduxN69e+Hj44OIiAj06NEDc+fOxaVLl2TiGjlyJJYtWwY9PT1MnTpV7Gu3b9/GzJkz0bp1a4SHh8PLywtr1qxBTEwMAODWrVtYvHgxBg0ahPXr1yM4OBj16tUrNubS+kFRR48exdatW+Hj44ONGzdizpw5UsngsoyP7OxsbNu2Df7+/ggODkZsbCymTZuGU6dOYd68eZg6dSr++usvHDlyRNwnJCQE165dg7+/P9asWQNnZ2f4+voiISGhxPsAAOvWrUO7du2watUqWFpaYs6cOVi4cCH69euH5cuXQxAEqXFW1vu9du1aODs7Y/Xq1WjatCnmzJkjjrGMjAz4+PjA1tYWy5cvR3BwMP777z8x6e3k5IT8/Hz8888/YnvPnz/HqVOn0L59+1LPpyRMvhIRERERERF9JfLygMOHgd9/B+7fB/LzS6+fm5sLHx8f1KxZE7a2tujatSsuXLggbg8PD8fIkSPh6OgIU1NTODo6okePHtixYweAgtl5+fn5mDRpEqpXrw4rKytMnjwZqampiI2NBQBERUWhb9++cHR0hJWVFXx8fKCpqVliTEpKStDU1IREIoG+vj709fWhrq6OhIQEnDhxApMmTYKDgwOsra0xbdo0PH36tMRk7rlz55CUlIQpU6bA2toa9vb2Mi+C2r9/P16/fo2pU6eiWrVq+OabbzBu3Djs3bsX//33n0ybCgoK4iPjenp60NfXh6amJl69eoW//voLI0eORNOmTWFlZYWJEydCRUVFKrlZlLa2NhQUFKChoSGea3ndm5IYGRlh9OjRqFKlClxdXeHp6Sm11mj79u3RtGlTmJqaok6dOvD29sbp06eRlZUl1c6QIUNQr149WFlZoW/fvrh27Rpev34tVefatWsYP348evXqhR9++KHEmApn1WppaUFfX1/8vHnzZri7u6Nz586wsLBAjx490KpVK2zevLnEtt7W33JycrBhwwb4+vqicePGMDU1hbu7O9q2bStz7QYOHIhGjRqhevXqmDJlCv777z+xr23ZsgUNGzbEgAEDYGFhAXd3d3Tt2lWcsZuamgo1NTU0b94cxsbGsLW1haenZ7Exl9YPikpNTYW+vj4aNmwIIyMj1KpVS1wbuazjIzc3FxMmTICtrS0cHBzg5OSEK1euwNfXF1ZWVmjevDm++eYbMeGZmpqK3bt3IyAgAA4ODjAzM0OvXr1gb28vJppL0r59ezg7O8PCwgJ9+vTB48eP0bZtWzRu3BhWVlbo1q2b+D0BlP1+u7u7o02bNjA3N8fQoUORlZWFGzduAAD++OMP2NjYYMiQIbC0tIStrS18fX1x8eJFJCQkQFVVFa6urlKx79u3D0ZGRqXO5C0Nlx0gIiIiIiIi+gps2waMGwcUnYymrQ00agSUkPOBqqqq1CO/+vr6eP78OYCCGaFJSUmYP38+FixYINbJy8sTk1n37t1DYmIiOnToINXu69evkZiYiNq1a+Pff/9FnTp1xG2KioqoWbNmqUsPFOfRo0dQVFRE7dq1xTIdHR1UqVIFjx49Knaf+Ph4GBkZSSWziu5f2K61tTXU1NTEMjs7OwiCgPj4eFSqVKlM8SUlJSE3Nxd2dnZimZKSEmrXrl1ifKX50HtTkjp16kjNPq1bty62bNmC/Px8KCgo4Pbt24iIiMC9e/eQnp6O/P/P4KempsLKykrcr3r16lKxAQUzCI2MjMT6P/74I4YMGYLu3bu/8/kDBfemcGmHQnZ2diXODH358uVb+1tiYiKys7MxceJEqX1zc3NhY2MjVVa3bl3xz9ra2qhSpQoePnwoxvbtt9/KxBYVFYX8/Hw0bNgQJiYm6Nu3L5o0aYImTZrA0dERqqqq73gV/sfJyUlMLjdp0gRNmzZFixYtoKioWObx8Wa/qlSpEkxMTKSW2KhUqZLY1+7fv4/8/Hz0799fKpacnBzo6OiUGm/RPlI4jorO1K1UqRJev36NzMxMaGholPl+F21XTU0NGhoaYrz37t1DbGxssbNYExMTYWFhAQ8PD4wYMQJPnz6FoaEhYmJi4O7uXuys7LJg8pWIiIiIiIjoC7dtG9C9O/BmPjM9vaA8Kqr4BKySknTaQCKRiEmqwpmOEydOlElYFq4FmZWVhRo1amDatGkybRfOXqT386H35n28evUKkyZNQuPGjfHTTz9BT08PqampmDRpEnJyckqMrzBplV9kqrWuri4MDQ1x4MABdOjQARoaGu8dV3kqvHZBQUEwNDSU2lZ0DdAPpaGhgRUrViA2Nhbnzp3DmjVrEBERgWXLlkFLS+u92jQyMsK6detw/vx5nD9/HosWLcLmzZuxaNGiMrdRXL8qrqzwXmZlZUFBQQErVqyQ6VvFrYlc0rEK+8jb+s37nkPReJs3b47hw4fL7Fe4XrKtrS2sra2xZ88eNG7cGHFxcQgMDHynGIrisgNEREREREREX7C8vIIZr6VNJB0/vqDeu6hUqRIMDAyQlJQEc3NzqR9TU1MABUmMxMREVKpUSaaOpqYmNDU1YWBggOvXrxeJNw+3b98u9djKysoyCRlLS0vk5eWJjxcDQFpaGuLj46VmZBZVpUoVpKamSi0fcPPmTZl27927h1evXollV69ehUQiKfEFUoVJuqIxmpmZQUlJCVevXhXLcnNzcfPmzRLjK+lc36Ys96YkRe9F4WcLCwsoKCjg0aNHSEtLw7Bhw+Dg4ABLS8til14oC1VVVQQGBkJFRQWTJk1CZmZmqfWVlJSKvedFrydQcG9Kup5l6W9WVlZQVlZGSkqKzLUrnLVbqGg76enpUn2tpNgKryVQMOu2YcOGGD58ONasWYPHjx+XuF5tWfuBqqoqWrRoAW9vbyxatAjXrl1DXFzce42PsrC1tUV+fj7+++8/metV0vII7+td73dJ8T548AAmJiYy8Rad3e7h4YGYmBjs3r1bXMbhfTH5SkRERERERPQFO3ZMeqmBNwkCEB9fUO9dDRo0CJGRkdi2bRsSEhJw//597N69G1u3bgUAtG3bFrq6uvjpp59w+fJlJCcnIzY2Fr/99huePHkCAOjWrRsiIyNx/PhxPHr0CIsWLUJGRkapxzUxMUFWVhYuXLiAFy9eIDs7GxYWFvj2228xf/58XLlyBffu3cPcuXNhaGgo8/h3oUaNGsHMzAyBgYG4f/8+rl69itWrVwP436y7tm3bQkVFBYGBgYiLi8PFixcREhICNze3EpccMDY2hkQiwcmTJ/H8+XNkZWVBTU0NnTt3xtKlS3HmzBk8fPgQCxYsQHZ2tsyyDG+e66VLl/D06VO8ePGi9BtSxNvuTUlSU1MRFhaG+Ph4HDhwANu2bUO3bt0AFMysVFJSwh9//IHk5GScOHEC69atK3NMb1JTU0NQUBAUFRXh5+cns25sUSYmJrhw4QKePXsmvjypd+/eiImJwZ9//omEhARs3boVR48eFV/AVpy39TcNDQ306tULS5YswZ49e5CUlIQ7d+5g27ZtMi8rW7t2LS5cuIC4uDgEBQVBV1cXLVu2BAD06tUL58+fx7p165CQkIA9e/bgjz/+EGM7efIktm3bhrt37yIlJQV79uxBfn5+iQn9svSDmJgY7Nq1C3FxcUhOTsa+ffugqqoKY2Pj9xofZWFhYQFXV1cEBgbi2LFjSE5Oxs2bN7Fx40acOnXqvdstzvvc7zd17doV6enpmD17Nm7evImkpCScPXsW8+bNk0puu7q64smTJ9i5c6c4Pm/evIkBAwbg6dOn7xQ3lx0gIiIiIiIi+oIlJ5dvvaI8PDygpqaGTZs2YenSpVBXV0e1atXENTxVVVUREhKC5cuXw9/fH5mZmTA0NETDhg3FtUd79uyJf//9F4GBgVBQUED79u3RsmVLvHz5ssTj1q1bF506dUJAQADS0tIwcOBAeHl5wc/PD6GhoZgyZQpyc3Ph4OCAoKAgmceQCykoKGDOnDmYP38+hg8fDjMzM4wYMQJTp06FioqKeA7BwcEIDQ3FiBEjoKqqCicnJ4waNarE+AwNDeHl5YUVK1Zg3rx5cHNzw+TJkzFs2DAIgoCff/4ZmZmZqFmzJoKDg8UXdBVn0KBBWLhwIfr27YucnBwcOnTorfcFePu9KYmbmxuys7MxYsQIKCoqolu3buJLm/T09DB58mSsWrUK0dHRqFGjBkaOHImffvqpTDEVR11dHfPmzcOkSZMwefJkzJs3T2oGYqGRI0ciLCwMO3fuhKGhITZt2oSWLVtizJgx2Lx5M0JDQ2FiYgI/P79SX4xUlv42ePBg6OnpYePGjUhOToaWlhZsbW1l1jUdNmwYfvvtNyQkJMDGxgaBgYFiX7O1tcXMmTOxZs0arF+/Hvr6+hg0aBDc3d0BFLw87OjRo4iIiMDr169hbm4Of39/VK1atdi4y9IPtLS0EBkZiSVLliA/Px/Vq1fHzz//LK69+q7jo6z8/Pywfv16hIWF4enTp9DV1UWdOnXQvHnzD2r3Te9zv99kYGCA3377DStWrBCXyzA2NkaTJk2k1nTV1NSEk5MTTp48KSbUX716hfj4eOTm5r5T3BLhXVew/sqkpaVBV1cXL168eOtCwVS+cnJysGvXLnTo0KFc11Uh+pxxXBDJ4rggKh7HBpGsr3VcHD4MuLi8vd6hQ4Czs7yj+fRdvXoV3t7e2Lhxo9SLh75EzHm8n9jYWEyYMAE7dux47/VZ6dPn4+ODatWqwdvb+4Pa4cxXIiIiIiIioi+YoyNgYQEkJha/7qtEUrDd0fHjx/YpOHbsGNTV1WFhYYHExET89ttvsLOz++ITr0RUvPT0dMTGxopJ9g/F5CsRERERERHRF0xREQgJAbp3L0i0Fk3AFj5lu2hRQb2vUVZWFlasWIGUlBTo6uqiYcOGpS4pQERftqFDhyI9PR3Dhw8vcQ3ed8HkKxEREREREdEXztMTiIoCxo2TfvmWhUVB4tXTs8JCq3Bubm5wc3Or6DDoM1K/fv0yr71Ln59NmzaVa3tMvhIRERERERF9BTw9gc6dgWPHCl6uZWpasNTA1zrjlYjoY2DylYiIiIiIiOgroajIl2oREX1MChUdABEREREREREREdGXiMlXIiIiIiIiIiIiIjlg8pWIiIiIiIiIiIhIDph8JSIiIiIiIiIiIpIDJl+JiIiIiIiIiIiI5IDJVyIiIiIiIiIiIiI5YPKViCpUbGwsXFxckJGRUdGhlAsXFxccP35crsc4cOAAhg8fLtdj7Ny5Ez179kTr1q0RFRVVYpk89O7dW67tlyYiIgJDhgz5KMd6/PgxXFxccPfu3Y9yvKJiYmLw3Xffyf04FXmOREREREREnwKlig6AiL5cLi4upW4fOHAg6tev/3GC+Uiio6Ohra0t12O0bNkSbdq0kVv7mZmZCAkJwahRo9CqVStoaWkVW/ahYmJiEBoaip07d0qVL1u2DOrq6h/c/tu4uLhg9uzZaNmypdyPVRwjIyNER0dDV1e3Qo5PRERERERE8sfkKxHJTXR0tPjnQ4cOYc2aNVi/fr1Ypq6ujlu3blVEaMXKzc2FktKHfS3q6+uXUzQlU1VVhY6OjtzaT0lJQW5uLpo1awYDAwMAQFxcnEyZvOjp6cm1/U9BYV+Td38pjz5NRERERERE74//IiMiuSmaWNLU1IREIikx2XT79m0sX74cDx8+hI2NDfz8/FClShVx+z///IO1a9fiwYMHMDQ0RLt27dC/f38oKiqWePy///4bW7ZsQXJyMkxMTNCtWzd07twZQMHj0H369IG/vz+2b9+OGzduwMfHB+3atcP69euxY8cOPH/+HFZWVhg2bBiaNGkCoCCZtWTJEhw9ehTp6emoVKkSOnXqhH79+gGQnU15//59hIaG4tq1a1BVVYWTkxNGjRolzuwMCgpCRkYG7O3tsWXLFuTk5KB169YYM2ZMiUmzAwcO4M8//8SaNWsAFCzdsHz5csTFxUFJSQlVq1bF9OnTYWxsXOz+y5cvx/Hjx/HkyRPo6+vD1dUVAwYMgJKSEmJiYjBv3jwAQN++fQEAfn5+MmW///47TExM3npfMjIyxOO9fPkS5ubmGDZsGNTV1cU2C2dIDxw4EF5eXujduze6d++O7t27i9snTpyIU6dO4ezZszA0NMSoUaPQokUL8ZxOnDiBsLAwpKamom7dunB3d0dQUBB27NhR7Czd3r17AwCmT58OADA2NsamTZvE7Xv37sWaNWuQnp6Opk2bYuLEidDQ0AAACIKAyMhI7Ny5E8+ePYOFhQUGDBgAJyenYq934fE6dOiAxMREHD9+HI6OjvDy8kKfPn2wcuVKWFtbo2fPnujfv7/YRwHgzp07GD58OH7//XcYGxsjIyMDS5cuxT///IOcnBzUrFkTo0ePhrW1NYCCZROOHz+Orl27YsOGDUhJScHBgwdLjOv48eNYtmwZUlNTUa9ePUyaNAlGRkYAgKSkJCxZsgTXr1/Hq1evYGVlhaFDh6Jhw4ZS59WxY0ckJibi8OHD0NbWxvfff1/ikgb5+flYsGABrl69igULFojHIiIiIiIi+lIx+UpEn4RVq1Zh1KhR0NPTwy+//IJ58+YhNDQUAHD58mX8/PPPGDt2LBwcHJCYmIiFCxcCKEjYFWf//v0IDw/HuHHjYGNjg7t372L+/PlQU1NDu3btxHorVqzAqFGjYGNjAxUVFURFRWHz5s348ccfYWtri127duGnn35CeHg4LCwsEB0djRMnTmDGjBkwNjZGamoqUlNTi43h1atX8PX1RZ06dbBs2TI8f/4c8+fPR0hICCZPnizWu3jxIgwMDPDrr78iMTERAQEBsLGxKdOanHl5eZg2bRq+++47TJ8+HTk5Obh58yYkEkmJ+2hoaGDy5MkwMDDA/fv3sWDBAmhoaKB3795wcXGBkZERfvzxRyxduhRGRkbQ0NCQKdPT03vrfREEAX5+fsjMzMRPP/0Ec3NzPHjwAAoKCrCzs8OYMWOkZkOXttTA2rVrMXz4cIwYMQLbtm3DnDlzsHnzZmhrayM5ORkzZsxAt27d4OHhgTt37mDp0qWlXrdly5aha9eu8PPzQ5MmTaCg8L8l0JOSknD8+HEEBgYiPT0dAQEBiIyMFNeC3bhxI/bt2wcfHx9YWFjg0qVLmDt3LvT09FCvXr0Sj7l582YMHDiw2D4rkUjQpk0bHDhwQCr5un//ftjZ2YmJ9JkzZ0JVVRXz5s2DpqYmduzYAR8fH2zYsEFc7iIxMRFHjx7FrFmzSv3lRHZ2NjZs2IApU6ZAWVkZv/76K2bNmiWOu6ysLDRr1gxDhgyBsrIy9u7di6lTp2L9+vVSSdPNmzfjhx9+QL9+/XDkyBH88ssvqFevntQvTwAgJycHs2fPxuPHj7F48eKvYoYzERERERERk69EVO7y8vNw7NExJKcnw1TbFI6Wjm/dZ8iQIWLiqm/fvpg8eTJev34NFRUVrF27Fn379hWTpqamphg8eDCWL19eYvI1PDwcI0eOhKOjo7jPgwcPsGPHDqnka/fu3cU6QEEiqW/fvmjdujUAYPjw4YiNjUVUVBTGjx+P1NRUmJubw97eHhKJpMTZpUBB4uz169eYOnUq1NTUAADjxo3DlClTMHz4cFSqVAkAoK2tjXHjxkFBQQGWlpZo3rw5Lly4UKbka2ZmJl6+fInmzZvDzMwMAGBlZVXqPt9//734ZxMTE/Tq1QsHDx5E7969pZY00NPTE2cqF1f2tvty/vx53LhxA+vWrYOFhYVYp9DbZkMX5e7uLq5zO3ToUGzbtg03btxAkyZNsGPHDlSpUgUjRowAAFSpUgVxcXHYsGFDie0VJv60tLRkjp+fn4/JkyeLM13d3Nxw4cIFAAUJxA0bNmDhwoWoW7eueE5XrlzBjh07Sk2+NmjQAD179hQ/P378WGq7q6srtmzZgtTUVBgZGUEQBBw8eFC8X1euXMGNGzewfft2KCsrAwBGjhyJ48eP48iRI2J/yc3NxZQpU96a3MzNzcW4ceNQu3ZtAMCUKVMwcOBA3Lx5E7Vq1YK1tbU4oxYABg8ejGPHjuGff/5B165dxfJmzZqJCeM+ffpg69atuHjxolTyNSsrC5MnT0ZOTg5+/fVXaGpqlhobERERERHRl4LJVyIqV9tubMO4mHFISEsQyyx0LOCl6VXqftWrVxf/XJgMe/78OYyMjHDv3j1cvXpVKpmWn5+P169fIzs7G6qqqlJtvXr1CklJSZg/fz4WLFgglufl5ckkfWrWrCn+OTMzE//++y/s7Oyk6tjZ2eHevXsACpKAP/74IwYMGIAmTZqgefPmaNSoUbHn9OjRI1hbW4uJ18K2BEFAfHy8mHytWrWq1MxLfX19xMXFlXK1/kdbWxvu7u6YNGkSGjVqhIYNG8LZ2bnUdVkPHTqE6OhoJCUlISsrq9jrUhZvuy93795F5cqVxcTrhyjaP9TU1KChoYHnz58DAOLj41GrVi2p+oUJxfdhYmIiJl6BgvtReKzExERkZ2dj4sSJUvvk5ubCxsam1HaL9rXi2NjYwNLSEvv370ffvn0RGxuL58+fw9nZGUDB9c7KykKnTp2k9svOzkZiYqL42djYuEyzShUVFaWum6WlJbS0tPDw4UPUqlULWVlZiIiIwKlTp/Dvv/8iLy8P2dnZMjO9i96bwmR64fUqNHv2bFSuXBm//PKLzHglIiIiIiL6kjH5SkTlZtuNbei+pTsECFLliWmJmHN+DhpmNCxhT0itb1r4yHx+fj6AgllzgwYNkpqhWkhFRUWmLCsrCwAwceJEmSRc0SQnAKnEaFnY2tpi06ZNOH36NM6fP4+ZM2eiYcOGCAgIeKd2inpzbVeJRCKee1n4+fnB09MTZ86cwaFDh7B69WosWLAAderUkal77do1zJkzB4MGDULjxo2hqamJgwcPYsuWLe8c99vuS3H35n196DUqr2MV9q2goCAYGhpK1SucjVqSsvS1tm3b4sCBA+jbty8OHDiAJk2aiLOOs7KyYGBggEWLFsnsV3Rd23ft0yVZunQpzp07h5EjR8Lc3ByqqqqYMWMGcnJypOqV5d40bdoU+/btw/Xr1/HNN9+US3xERERERESfAyZfiahc5OXnYVzMOJnEKwCx7NqTa8jLz4OiQsnrUBbH1tYWjx49grm5eZnqV6pUCQYGBkhKSoKrq2uZj6OhoQEDAwNcvXpV6vHxq1evSs0Q1NDQgIuLC1xcXODk5ARfX1+kp6eLa24WsrS0RExMDF69eiUmxK5evQqJRCKzHuaHsrW1ha2tLfr164fRo0fjwIEDJSZfjY2N0b9/f7EsJSXlvY9Z2n2xtrbGkydPkJCQUOzsV2Vl5XJJoFapUgWnT5+WKrt58+Zb91NSUnrn41tZWUFZWRkpKSmlLjHwvtq0aYPVq1fj9u3bOHLkCHx8fMRttra2ePbsGRQVFWFiYvLBx8rLy8OtW7fEvh0fH4+MjAxx2YqrV6/C3d1dTK5nZWXJLJVQVp07d0a1atUwdepUBAUFyeXaERERERERfYoU3l6FiOjtjj06JrXUQHFe5bzCsUfH3rntgQMHYu/evVi7di0ePHiAhw8f4uDBg1i9enWJ+wwaNAiRkZHYtm0bEhIScP/+fezevRtbt24t9Vi9e/dGZGQkDh06hPj4eKxYsQJ3795Ft27dAABbt27FgQMH8OjRIyQkJODw4cPQ19eXmnlYqG3btlBRUUFgYCDi4uJw8eJFhISEwM3NTVxy4EMlJydj5cqVuHbtGlJSUnDu3DkkJCTA0tKy2PoWFhZITU3FwYMHkZSUhG3btuHYsXe/J8Db70u9evVQr149+Pv749y5c0hOTsbp06dx5swZAAWP92dlZeHChQt48eIFsrOz3yuOjh074tGjR1i+fLl4T2JiYgCg1BePmZiY4MKFC3j27BnS09PLdCwNDQ306tULS5YswZ49e5CUlIQ7d+5g27Zt2LNnz3vF/2ZMdevWRXBwMPLz89GiRQtxW8OGDVG3bl1MmzYN586dw+PHj3Ht2jWsWrUKt27deudjKSkpISQkBDdu3MDt27cRFBSEOnXqiMlYCwsLHDt2DHfv3sW9e/cwZ84cCILsL1fKytPTEz/88AOmTJmCK1euiOWBgYFYuXLle7dLRERERET0KePMVyIqF8npyeVar6jGjRsjMDAQa9euxe+//w5FRUVYWlrCw8OjxH08PDygpqaGTZs2YenSpVBXV0e1atXQvXv3Uo/VrVs3vHz5EmFhYXj+/DmsrKwwd+5cceamuro6Nm3ahISEBCgoKKBWrVoICgoqNsmnqqqK4OBghIaGYsSIEVBVVYWTkxNGjRr1ztegJGpqanj06BH27NmDFy9ewMDAAF26dJFZF7RQixYt0KNHD4SEhCAnJwfNmjXDgAEDEBER8c7HLst9mTVrFpYuXYrZs2fj1atXMDc3x7BhwwAAdevWRadOnRAQEIC0tDQMHDgQXl5e7xyHqakpAgICEBYWhujoaNStWxf9+/fHr7/+WupSACNHjkRYWBh27twJQ0NDbNq0qUzHGzx4MPT09LBx40YkJydDS0sLtra2UrOJP4SrqysWLVoENzc3qfVRJRIJgoKCsHr1agQFBeHFixfQ19eHg4PDeyXzVVVV0bdvX8yePRtPnz6Fg4MDfH19xe2jRo1CcHAwxowZA11dXfTp0wcvX778oHPr3r07BEHA5MmTERwcjLp16yIlJaXUJDkREREREdHnTCJ8yDSWr0BaWhp0dXXx4sULcd09+jhycnKwa9cudOjQ4a1rKVLFO/zgMFzWury13qGBh+Bc1Vn+AX2hOC7KZsOGDfjrr7/eay1b+vxwXBAVj2ODSBbHBZE05jyI5I8zX4moXDhaOsJCxwKJaYnFrvsqgQQWOhZwtJR9ORPRh/rzzz9Rs2ZN6Orq4sqVK9i0aRO6du1a0WERERERERHRV47JVyIqF4oKighxD0H3Ld0hgUQqAStBwSPFi9wXvfPLtojKIiEhAevXr0daWhqMjY3Rs2dP9OvXr6LDIiIiIiIioq/cZ/3CraNHj6Jjx44wMzODRCLB9u3bpbYLggB/f3+YmppCXV0drq6uuHPnTsUES/QV8KztiaieUTDXMZcqt9CxQFTPKHjW9qygyOhLN3r0aERFRWHv3r1Yv349BgwYAEVFJvqJiIiIiIioYn3WM19fvnyJevXqYfDgwfD0lE3qBAcHY/HixVi7di2qVauG6dOno127drh+/TrU1NQqIGKiL59nbU90rtkZxx4dQ3J6Mky1TeFo6cgZr0RERERERET01fmsk6/t27dH+/bti90mCAIWLVqEadOmoXPnzgCAdevWwdjYGNu3b0fv3r0/ZqhEXxVFBUW+VIuIiIiIiIiIvnqfdfK1NHFxcXj8+DFcXV3FMl1dXTRt2hQnT54sMfmanZ2N7Oxs8XNaWhqAgrdi5uTkyDdoklJ4vXndif6H44JIFscFUfE4NohkcVwQSeNYIJK/Lzb5+vjxYwCAsbGxVLmxsbG4rTiBgYEICAiQKd+7dy80NDTKN0gqk3379lV0CESfHI4LIlkcF0TF49ggksVxQVQgMzOzokMg+uJ9scnX9zVlyhT4+PiIn9PS0lClShW4ublBR0enAiP7+uTk5GDfvn1o27YtlJWVKzocok8CxwWRLI4LouJxbBDJ4rggklb4tC8Ryc8Xm3w1MTEBAKSkpMDU1FQsT0lJQf369UvcT1VVFaqqqjLlysrK/Mu5gvDaE8niuCCSxXFBVDyODSJZHBdEBTgOiORPoaIDkJdq1arBxMQEBw4cEMvS0tJw+vRpNG/evAIjIyIiIiIiIiIioq/BZz3zNSMjA3fv3hU/x8XFITY2Fvr6+rC0tMT48eMxZ84c2Nraolq1apg+fTrMzMzQpUuXiguaiIiIiIiIiIiIvgqfdfL13LlzcHFxET8XrtU6cOBAREREwNfXFy9fvsSwYcPw/PlztGzZEjExMVBTU6uokImIiIiIiIiIiOgr8VknX52dnSEIQonbJRIJZs2ahVmzZn3EqIiIiIiIiIiIiIi+4DVfiYiIiIiIiIiIiCoSk69EREREREREREREcsDkKxEREREREREREZEcMPlKREREREREREREJAdMvhIRERERERERERHJAZOvRERERERERERERHLA5CsRERERERERERGRHDD5SkRERERERERERCQHTL4SERERERERERERyQGTr0RERERERERERERywOQrERERERERERERkRww+UpEREREREREREQkB0y+EhEREREREREREckBk69EREREREREREREcsDkKxEREREREREREZEcMPlKREREREREREREJAdMvhIRERERERERERHJAZOvRERERERERERERHLA5CsRERERERERERGRHDD5SkRERERERERERCQHTL4SERERERERERERyQGTr0RERERERERERERywOQrERERERERERERkRww+UpEREREREREREQkB0y+EhEREREREREREckBk69EREREREREREREcsDkKxEREREREREREZEcMPlKREREREREREREJAdMvhIRERERERERERHJAZOvRERERERERERERHLA5CsRERERERERERGRHDD5SkRERERERERERCQHTL4SERERERERERERyQGTr0RERERERERERERywOQrERERERERlSomJgbfffddRYfxxerduzeioqIqOowP5uLiguPHj5drmx+r7z1+/BguLi64e/dumfcJCgrCtGnTPolYPkexsbFwcXFBRkZGRYdCJFdMvhIREREREX3l5JVEImklJRKXLVuGjh07VkBE0sqa6IyIiMCQIUM+QkSfNm9vb0yePPmD2viax56dnR2io6OhqalZ0aEQyZVSRQdARERERERE9DXT09Or6BDoPTBpWLzc3FwoKb093aSkpAR9ff2PEBFRxWLylYiIiIiIiMrk7NmzCA0NRWpqKuzt7eHn5wcDAwMAwM2bN7Fq1SrcuXMHubm5sLGxwZgxY2BrawsAmDNnDvLy8jBjxgyxvdzcXHTr1g2jR4+Gm5sbBEFA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REZGyt3dXSVKlHjaoTw1kZGRcnJyUtmyZbN928n3PrJHRs/nf/FLBAAAADw7MvwvhCNHjmjgwIEZalu/fn3NmDEjy0EBADLHycnJ9HOuXLlkZWVltuxhp06d0ty5cxUWFiYvLy8FBgbKzc3NtH737t1asmSJLly4oEKFCqlx48Z6880300xyBgUF6e7duypVqpS+/fZb2dnZacWKFWaz/caPH6+EhAR98MEHpn7x8fF69dVX1a9fPzVq1EhGo1Fff/21NmzYoBs3bshgMKhTp06qU6eOpKSyCYMHD1ZQUJAWLFig8+fP65NPPklzRm94eLimT5+uU6dOydXVVe+8844qVKggSUpMTNSUKVN06NAh3bhxQ0WKFFGrVq306quvpjiu8uXLa/Xq1YqLi1P9+vXVv3//NBNCP/74o2bPnq2PPvpIL774otk6o9Go1q1ba/DgwaZj6tGjh27evGlKnh85ckRDhgzRhg0bZG9vr2+++UY//fSTIiMjlTdvXtWsWVO9e/c2zSi+evWqZsyYoSNHjiguLk4uLi7q06ePqlWrliK2d955R4cPH5aUNFO6QoUKmj59eop2UVFRmjFjhg4ePChra2tVrVpVAwcOVIECBUxtvvvuO61atUrXrl2Ti4uL3nrrLTVq1Mi0/tKlS/rkk090/PhxFStWTP379091P7Nnz9a+fftkbW2t8uXLa8CAAXJxcTFdozlz5mjjxo2ytrZWs2bNHju78fbt25o1a5YOHz6su3fvqlixYnrjjTfUoEEDSUnX9OeffzadA2dnZ1Pf999/X5Lk7OyslStXSnr8WKhXr57eeecd7d27VwcOHFCHDh3UpUuXFOf96tWr+uKLL/TFF19ISvqCJNm+ffs0c+ZMRUVFqXz58goMDFTBggVN63/88UetXr1aly9flouLi1599VW1bNky3fNgNBo1d+5c/fjjj7K1tVWLFi3M4rp7965mz56t3bt3Ky4uTj4+PurXr588PT0lJSWov/jiCx07dkx///23PDw81LNnT1WqVEmSNH/+fB04cECzZ88222/37t1Vp04d+fn5aciQIVq9erXZn0MzZ87UqVOn9Nlnn6Uad2rns1OnThkeq+PHjzedc09PT+XIkSPNcwAAwD/J0k/ZWNI777wjLy+vVH+fe9Y8+juDpWzatEkzZ87Uhg0bnmg7PD31/Mhw8vXG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2bNnq2/fvipTpowcHR21cuVKHT9+3Kzdo7McraysTOfV0dFRX375pUJCQrR//34tXLhQixcv1pw5c5Q7d+4U+3w4iRkSEqIePXrIyclJK1as0MmTJzP96H5GYswOVlZWqlChgkJCQmRnZyc/Pz95enoqLi5O58+fV2hoqNq3b2/xmGNiYlSjRg317t07xbqHX/D26L30uH7W1taaMmWKjh49qn379mn9+vVasGCBZs2apaJFi2bmsFLs+8qVKxo5cqRatmypHj16KG/evDpy5IgmT56suLi4NJOvMTExsra21pdffplihnpyaYFmzZqpSpUq2rNnj/bv36+vv/5affr0SXf2NQDg2UbZAQAAAPyrJSQkzXh9NPEq/W/Z0aMZK0HwKG9vb4WHh8vV1TXFfw/XZn3UmTNnFBsba/p87NgxOTg4qEiRIrp9+7YuXryot956Sy+++KI8PDx0586dzAenpOTWqFGj9MILL2jw4MG6fv16mm3d3d2VkJBgloi8f/++Ll26ZJqpmlHe3t66cOFCquflcS+EcnR0VL169TR06FB98MEHppdvPU6xYsVka2ur0NBQ07L4+HidOHHCFH9oaKjKli2rli1bytvbW66uroqMjMzUsUmSjY2NKlWqpN69e2vhwoW6cuWKDh06lGrb5Lqvu3fv1oULF1S+fHlTEvP777+Xj49PiuRdsuQar9mZVJWSznHBggXNzpWUdH4evtbJydeQkBD5+fmZjmXlypWKi4vLUtI4PXZ2dimONflecnFxSXEvpXXeMtrPyspK5cqVU9euXTVv3jzZ2tpq165dacaSUadOnZLRaDQl+Q0Gg/76668MHWtiYqJu3ryZIuaHXwhYpEgRtWjRQh999JHatWtnKqsBAHg+kXwFAADAv1pwsHmpgdT8/XdSu8zq3LmzNm/erCVLlujChQsKCwvT9u3btWDBgnT7xcfH65NPPlFYWJj++OMPLVq0SK1bt5aVlZXy5MmjvHnzasOGDYqIiNChQ4c0a9aszAf3/6ytrTV69Gh5enpq8ODBunHjRqrtDAaDXnrpJX3yySc6cuSIzp49q2+++UYFCxbUSy+9lKl9JtfGnTFjhs6cOaNLly5p9+7dmjFjRrr9vvnmG23btk3h4eG6dOmSdu7cKScnp1RnlD4qZ86catmypWbPnq29e/cqLCxMU6ZMUWxsrJo2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Y50+fVpff/21Nm3apAEDBhjatG7dWps2bdLRo0eVlJSkefPmPdDswV27dmn79u06ffq0Vq1apYSEBPXp06fQtk899ZR+//13TZs2TUlJSTp9+rR27Nih33777b76btmypVq2bKmwsDD9+OOPOnv2rA4cOFDoe3mvNffo0UNr166VpGLXvnV1ddXZs2d17NgxpaWlGT2s60769OmjjIwMTZ8+XYmJiUpJSdEPP/yg2bNn31eY+2d+fn767rvv9NVXXxketJVv8ODB2rFjhyIjI5WcnKyTJ08qJiZGK1asuK++jhw5os8++0ynT5/W5s2btWvXLvXt21eSVKdOHWVnZ2vjxo06e/asduzYYVin+X44Ojpq3rx5OnXqlKZPn254YFtiYqIGDRp038EuAAAAAOB/Htn7DH19ffX222+rVq1aOnPmjN58803169dP+/fvl3TraeD+/v7y8/PT0qVLdeTIEQ0dOlSOjo56+eWXzVw9YHp7T+0tMOPVwFVSjpRZJVPxGfHyqe4j6VYId/36dbm5uRndrp0/dtasWaOzZ8+qSpUqatKkiV588cVCT1+lShXt2bNHERERunnzpurUqaOwsDDVr1//rs7n7OysIUOGaPny5Zo9e7b8/f01ceLEAv24u7vr9ddf15o1a/Txxx+rU6dOGjBggLZu3WrUrnXr1qpTp45ee+01ZWVlqUuXLhoyZEiR712TJk0UHh6ulStXavXq1XJyclJwcLDRw7ZGjBihWbNm6bXXXpOzs7NGjRqlX3/9tchzFic4OFgxMTGaP3++qlevrrCwsCJnvtrZ2em9997TRx99pDFjxsjKykqNGzdW8+bN77v/adOmacmSJZo+fbr++OMP1alTp9g/K++m5i5dumjx4sXq3LlzscsbdOrUSXv27NHYsWN17do1TZgw4a4ecFa9enUtWrRIy5cv1/jx45WVlaWaNWuqbdu29zX79M9at24te3t7/fbbbwXC1zZt2mjmzJmKjIzUp59+KisrK9WrV8/wILJ7NWDAACUlJSkiIkKVK1fWyJEj1aZNG0m3ZiiPGDFCn376qf75z3+qRYsWeumllzRz5sz7vjYnJyfDA7veffddTZ48WX/88Yd+++03ZsMCAAAAwENgkffnheAeUVu2bFHv3r2VmZkpa2trLVmyRKGhoUpNTTX8D//EiRO1efNmJSYmFnme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",
      "text/plain": [
       "<Figure size 1400x800 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns\n",
    "from sklearn.manifold import TSNE\n",
    "from transformers import BertModel, BertTokenizer\n",
    "import torch\n",
    "import numpy as np\n",
    "\n",
    "# List of sentences with the word \"bank\" having different meanings\n",
    "sentences = [\n",
    "    \"I need to go to the bank to deposit some money.\",\n",
    "    \"The river bank was flooded after the heavy rain.\",\n",
    "    \"She works at a bank downtown.\",\n",
    "    \"We set up our picnic by the river bank.\",\n",
    "    \"He withdrew cash from the bank yesterday.\",\n",
    "    \"There are many fish along the river bank.\",\n",
    "    \"The bank offers loans with low interest rates.\",\n",
    "    \"Children were playing on the river bank.\",\n",
    "    \"I have a meeting at the bank in the morning.\",\n",
    "    \"The erosion is affecting the river bank.\"\n",
    "]\n",
    "\n",
    "# Labels indicating the meaning of \"bank\" in each sentence\n",
    "labels = ['money', 'river', 'money', 'river', 'money', 'river', 'money', 'river', 'money', 'river']\n",
    "\n",
    "\n",
    "# Function to get embeddings for the word \"bank\" in each sentence\n",
    "def get_word_embedding(text, word, model, tokenizer):\n",
    "    inputs = tokenizer(text, return_tensors='pt')\n",
    "    tokenized_text = tokenizer.tokenize(text)\n",
    "    word_idx = tokenized_text.index(word)\n",
    "    with torch.no_grad():\n",
    "        outputs = model(**inputs)\n",
    "    word_embedding = outputs.last_hidden_state[0, word_idx, :].numpy()\n",
    "    return word_embedding\n",
    "\n",
    "# Load BERT model and tokenizer\n",
    "model_name = 'bert-base-uncased'\n",
    "tokenizer = BertTokenizer.from_pretrained(model_name)\n",
    "model = BertModel.from_pretrained(model_name)\n",
    "\n",
    "# Get embeddings for the word \"bank\" in all sentences\n",
    "embeddings = np.array([get_word_embedding(sentence, \"bank\", model, tokenizer) for sentence in sentences])\n",
    "\n",
    "# Use t-SNE to reduce dimensionality to 2D\n",
    "tsne = TSNE(n_components=2, random_state=42, perplexity=5)\n",
    "embeddings_2d = tsne.fit_transform(embeddings)\n",
    "\n",
    "plt.figure(figsize=(14, 8))\n",
    "colors = {'money': 'blue', 'river': 'green'}\n",
    "for i, label in enumerate(labels ):\n",
    "    plt.scatter(embeddings_2d[i, 0], embeddings_2d[i, 1], color=colors[label], label=label if (labels + ['money', 'river']).index(label) == i else \"\")\n",
    "    plt.annotate(sentences[i], (embeddings_2d[i, 0], embeddings_2d[i, 1]), fontsize=10, alpha=0.75)\n",
    "\n",
    "plt.title('t-SNE visualization of BERT embeddings for the word \"bank\"')\n",
    "plt.xlabel('Dimension 1', fontsize=12)\n",
    "plt.ylabel('Dimension 2', fontsize=12)\n",
    "plt.legend(title=\"Contextual Meaning\", loc= 'upper left')\n",
    "plt.grid(True)\n",
    "plt.savefig('bank polysemi.jpg', format='jpeg')\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "da22f583-6704-48cd-a6f3-2eef5e773fc8",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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NSeJmze5m1tScvnynH4/olatWqFVq1ZFHQYVI/b29oWudUzFT1BQUFGHQFSsKBV1AERERERERCWZqyuwZw9Qvrxsu5lZTrura9HERURERMUbV+wSERERERF9Y66uQMeOQFgYEB+fU1O3WbMfd6UuERERfTkmdomIiIiIiP4DysqAg0NRR0FEREQlBUsxEBERERERERERERUzTOwSERERERERERERFTNM7BIREREREREREREVM0zsEhERERERERERERUzTOwSERERERERERERFTNM7BIREREREREREREVM0zsEhERERERERERERUzTOwSERERERERERERFTNM7BIREREREREREREVM0zsEhERERERERERERUzTOwSERERERERERERFTNM7BIREREREREREREVM0zsEhERERERERERERUzTOwSERERERERERERFTNM7BIREREREREREREVM0zsEhERERERERERERUzTOwSERERERERERERFTNM7BIREREREREREREVM0zsEhERERERERERERUzTOwSERERERERERERFTNM7BIREREREREREREVM0zsEhERERERERERERUzTOwSERERERERERERFTNM7BIREREREREREREVM0zsEhERERERERERERUzTOwSERERERERERERFTNM7BIREREREREREREVM0zsEhERERERERERERUzTOwSERERERERERERFTNM7BIREREREREREREVM0zsEhERERERERERERUzTOwSERERERERERERFTNM7BIREREREREREREVM0zsEhEREdFnCw0NRadOnYo6jBKrR48e2LNnT1GH8cUcHR1x7ty5rzpmaGgo2rdv/1XHlOfFixdwdHTE48ePC72Pj48Ppk2b9l3EUhyFh4fD0dERycnJRR0KERHRd42JXSIiIiJS6FslqEiWoiTl2rVr4eLiUgQRySpsAj8wMBAeHh7fPqDvnKenJyZNmvRFY/zI7z07OzsEBwdDW1u7qEMhIiL6rqkUdQBERERERCRfqVKlijoE+gxMSMqXlZUFFZWP/wqqoqKCMmXK/AcRERERFW9M7BIRERHRF3v06BHc3d3x6tUr1KhRA97e3jAwMAAA3L9/H/7+/nj06BGysrJgY2ODUaNGwdbWFgAwb948ZGdnY+bMmeJ4WVlZ6NKlC0aOHIlWrVpBEARs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lizRxo0bNWDAAAUGBuo///mPvvzySx05ciTFPk6dOqVvvvlGnTp10qJFizRhwgSVL1/etD+t9goWLKgvvvhCkrRo0SKtWrVKffr0eaprPnTokEJDQzVlyhSNGDFCu3btUmBgYKrHnz59WqNGjVLt2rW1YMECdezYUfPnzzcLGtNr9uzZatWqlYKCglSpUqVUj5s/f77eeustBQQEqHz58vryyy8VGhqa4rHXrl1T3759ZWtrq0mTJmn27Nl6++23zcLEw4cPKzIyUpMnT9awYcO0fv36VOtPTEzUkCFDFBISok8//VRBQUHq1q2brKzSjiSSap43b57q1q2rL774wlRz48aNtWXLFhmNRtPxmzZtUoECBUzP1aN8fX3VunVrFS1aVKtWrdKqVavk6+tr2h8UFKRatWpp3rx5qlKlisaOHavbt29LehhKDxgwQF5eXgoICNCECRN048YNjR49Os36Y2NjtXTpUg0aNEiBgYF65ZVXzPbXrFlT0dHRZj8vt2/f1v79+1W3bl1JD2e8f/XVV3r33XcVFBSkAQMGaP369cnC28DAQFWvXl0LFixQo0aNUq1pxYoV8vT01Ny5c+Xn56eAgACz/QaDQX369FFgYKCGDRumQ4cOJTsmNjZWK1as0PDhw/XNN98oKipKM2fOTLG/w4cPa+DAgerSpYvee++9NO8XgIyzed4FAAAAAABeHq+//rqmTZum+Ph4xcbG6syZMypfvrzi4uL0888/S5KOHz8uo9Go119/XUajUYsXL9bXX38tb29vSVKhQoV09OhRrVmzxiywTRIVFaWcOXOqWrVqcnBwkLOzs7y8vCQpXe3lzp1b0sPlArLia/E2NjYaMmSI7OzsVLRoUXXq1EmzZs3Shx9+KIPBkOz47777ThUrVlT79u0lSW5ubgoNDdXy5cvVsGHDDPXdqlUr1ahR44nH1apVS40bN5bRaFTdunVlNBr1ww8/JFv7WJJ+/PFHOTo6auTIkbKxsTHV+KjcuXOrX79+srKykoeHh6pVq6ZDhw6pSZMmydo7ePCgTpw4oYULF5raKVSoULprlqTOnTvrwIEDpppr1KihqVOnas+ePapVq5akh7NJGzZsmOI9t7Ozk729vaytreXk5JRsf8OGDVWnTh1JUteuXbV69WqdOHFClStX1g8//KASJUqYzd4ePHiwWrdurfDw8GT3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kKurq+zs7PT555+bwnFJevPNN2Vra6tdu3bJ1tZWcXFxqlmzZprt/hPjnZ6+DQaDJGWq77SuISYmRlZWVpo9e3aygNLe3j7NdlNauuTxfmvWrKktW7aodu3apv9rbW1t6jszz1RmjRs3Trdu3VKfPn3k7OwsW1tb9erVy+wZSar7USmNedWqVbVz505duHAhWfifGemOhhcsWKCwsDD98ssvGjp0qFmoK0murq4aNmyY1qxZo/PnzyswMPCpiwMAAAAAAHje4hPi1W99v/+FupJkJ8lV0kkp0Zioj9d/rPiEeNPuO3fuZFn/RYoU0fHjx822Pf45JSVKlFBERIReeeUVubq6mv15msl4jo6O8vT01A8//CAbGxt5eHiofPnyOnPmjPbu3Wv28iwvL69M1ZDZ8yTze3P79m1dvHgxxaUrJCkkJEQNGzZUjRo1VLx4cTk5Oeny5ctmx1hbW6tBgwZav3691q1bp9q1az/VV+jd3d0VFRWlGzdumLY9uoZvSgoXLiwbGxuFhISYtsXFxenkyZOpXlt62NraSsp48Ovl5aWEhATduHEj2fg8OhM5s+rWrav9+/frwoULOnTokGkZhqS+s/K5vnLliv7++2/T5+PHj8tgMJheOBcSEqKWLVuqSpUqKlq0qGxtbRUdHZ2p6+rWrZsaNGigTz75JNVZ5BmR7mD3l19+Uf369VWrVq00j6tdu7bq1aunNWvWPG1tAAAAAAAAz92usF0Pl194XFVJiZLWShf/vKjVv69WaGioVq9e/cSv6mfEu+++q3Xr1mndunUKDw/XggULdOHChSeeV7duXeXNm1effvqp/vzzT126dEnBwcH69ttvdfXq1aeqycfHR5s3bzatpZs7d24VKVJE27ZtM22TpHr16mWqhsyeJz18idWhQ4d0/vx5+fv7K2/evKpevXqKx7q5uWnXrl06e/aszp07p7FjxyoxMTHZcY0bN9ahQ4e0f//+ZEsAZNQbb7yhwoULa9y4cfrrr78UEhKiefPmSfrfDNvH5cyZU82bN9fMmTO1f/9+hYaGauLEiYqNjX2qevLlyyc7Ozvt379fN27c0N27d9N1npubm+rWratx48Zp165dunTpkk6ePKklS5Zo3759ma4nSbly5eTk5KSxY8eqUKFCZktVPM2zkZIcOXJo3LhxOnfunP78809988038vX1NQXU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510AgH+Or69vmvs7dOggHx+ff6aYf8iqVauUO3fuZ9pHmzZt1LJly2fW/r179zR16lT17NlTb731lhwdHVPc9rTWr1+vadOmae3atWbbZ82aJXt7+6du/0l8fX01ZswYVa9e/Zn3lZKCBQtq1apVyps373PpHwAAAACAjCDYBbKRVatWmf6+bds2zZ8/X4sWLTJts7e316lTp55HaSmKj49/6jacnJyyoJK02dvbP9Pg88qVK4qLi1PVqlWVP39+SdL58+eTbXtW8uXL90zbfxHExcXJxsbmmT8vSf0AAAAAAPC0+F+XQDbyaGiVK1cuGQyGVIOs06dPKyAgQKGhoSpRooSGDBkid3d30/49e/YoKChIFy5cUIECBdSgQQO1a9dO1tbWqfb/yy+/6LvvvtOlS5fk4uKid999V82bN5f08Cvi7733nkaOHKkff/xRx48f15tvvqkmTZpo4cKFWrNmjW7evKkiRYqoW7duqly5sqSHQdn06dO1c+dO3b59W6+88oqaNWum999/X1LyWaB//fWXpk2bpmPHjsnOzk41a9ZUz549TcGsv7+/7ty5o9dee03fffedjEajateurd69e6cayAUGBmr37t2aO3eupIfLWQQEBOj8+fOysbFR0aJFNWLECDk7O6d4fkBAgHbv3q2rV6/KyclJdevWVfv27WVjY6P169dr/PjxkiQ/Pz9J0pAhQ5JtW7ZsmVxcXJ44Lnfu3DH1d/fuXbm6uqpbt26yt7c3tZk0s7tDhw7q2LGj2rZtq1atWqlVq1am/QMHDtS+ffv0xx9/qECBAurZs6fefPNN0zX99ttvmjFjhqKiouTt7a2GDRvK399fa9asSXF2cdJ4jRgxQpLk7Oys5cuXm/Zv3LhR8+fP1+3bt1WlShUNHDhQDg4OkqTExEQtXbpUa9eu1fXr1+Xm5qb27durZs2aKd5v6eHyEo0aNVJERIR2796tGjVqqGPHjnrvvfc0Z84ceXp6qnXr1mrXrp3pGZWkM2fOqHv37lq2bJmcnZ11584dzZw5U3v27JHRaFTJkiXVq1cveXp6mj0bLVq00OLFi3XlyhVt3bo11bp2796tWbNmKSoqSuXLl9egQYNUsGBBSVJkZKSmT5+u48eP6/79+ypSpIi6du2qihUrml1X06ZNFRERoe3btyt37tz64IMPUl3mISEhQRMnTlRISIgmTpxo6gsAAAAA8OIj2AWQorlz56pnz57Kly+fJk2apPHjx2vatGmSpD///FNfffWV+vbtq3LlyikiIkJff/21pIdhYEo2b96sBQsWqF+/fipRooTOnj2r//73v8qZM6caNGhgOm727Nnq2bOnihQpoh07dmjVqlVasWKFPvnkE3l5eenXX3/Vp59+qgULFsjNzU2rVq3Sb7/9ps8//1zOzs6KiopSVFRUijXcv39fgwcPVpkyZTRr1izdvHlT//3vfzV16lQNHTrUdNzhw4eVP39+TZ48WRERERo9erRKlCiRrjVQ4+Pj9dlnn6lJkyYaMWKEjEajTp48KYPBkOo5Dg4OGjp0qPLnz6+//vpLEydOlIODg9q2bStfX18VLFhQn3zyiWbOnKmCBQvKwcEh2bZ8+fI9cVwSExM1ZMgQ3bt3T59++qlcXV114cIFWVlZqWzZsurdu7fZLO60ZiEHBQWpe/fu+uijj7R69WqNHTtWK1asUO7cuXXp0iV9/vnnevfdd9W4cWOdOXNGM2fOTPO+TZ8+Xa1bt9aQIUNUuXJlWVn9bwn4yMhI7d69W+PGjdPt27c1evRoLV261LT27pIlS7Rp0yYNGDBAbm5uOnLkiL788kvly5dP5cuXT7XPFStWqEOHDik+swaDQXXq1NGWLVvMgt3NmzerbNmyppB+1KhRsrOz0/jx45UrVy6tWbNGAwYM0OLFi01LgERERGjnzp364osv0vzFR2xsrBYvXqxhw4bJ1tZWkydP1hdffGH6uYuJiVHVqlXVpUsX2draauPGjRo+fLgWLVpkFsiuWLFCH374od5//33t2LFDkyZNUvny5c1+MSNJRqNRY8aM0eXLl/XNN99ki5nZAAAAAPAyIdgFkKIuXbqYQjE/Pz8NHTpUDx48UI4cORQUFCQ/Pz9TIFuoUCF17txZAQEBqQa7CxYsUI8ePVSjRg3TORcuXNCaNWvMgt1WrVqpRo0aMhqNypMnj6mv2rVrS5K6d++u4OBgrVy5Uh9//LGioqLk6uqq1157TQaDIdVZsdLDUO7BgwcaPny4cubMKUnq16+fhg0bpu7du+uVV16RJOXOnVv9+vWTlZWVPDw8VK1aNR06dChdwe69e/d09+5dVatWTYULF5YkFSlSJM1zPvjgA9PfXVxc1KZNG23dulVt27aVnZ2d8uTJI+nhkghJM6xT2vakcTl48KBOnDihhQsXys3NzXRMkifN4n5Uw4YNVadOHUlS165dtXr1ap04cUKVK1fWmjVr5O7uro8++kiS5O7urvPnz2vx4sWptpcUKjo6OibrPyEhQUOHDjXN0K1fv74OHTok6WE4uXjxYn399dfy9vY2XdPRo0e1Zs2aNIPdChUqqHXr1qbPly9fNttft25dfffdd4qKilLBggWVmJiorVu3msbr6NGjOnHihH788UfZ2tpKknr06KHdu3drx44dpuclLi5Ow4YNe2JwGhcXp379+ql06dKSpGHDhqlDhw46efKkSpUqJU9PT9NMYEnq3Lmzdu3apT179qhFixam7VWrVjWF0e+9956+//57HT582CzYjYmJ0dChQ2U0GjV58mTlypUrzdoAAAAAAC8egl0gG4hPiNeusF26dPuSCuUupBoeNZ54TvHixU1/Twrabt68qYIFC+rcuXMKCQkxC+oSEhL04MEDxcbGys7Ozqyt+/fvKzIyUv/97381ceLE/9UVH58sUCpZsqTp77Gxsbp+/brKli1rdkzZsmV17tw5SQ8Dxk8++UTt27dX5cqVVa1aNb3xxhspXlNYWJg8PT1NoW5SW4mJibp48aIp2C1atKjZjFEnJyedP38+jbv1P7lz51bDhg01aNAgvfHGG6pYsaJq1aqV5jq427Zt06pVqxQZGamYmJgU70t6PGlczp49q1dffdUU6j6NR5+PnDlzysHBQTdv3pQkXbx4UaVKlTI7PimszAwXFxdTqCs9HI+kviIiIhQbG6uBAweanRMXF6cSJUqk2e6jz1pKSpQoIQ8PD23evFl+fn4KDg7WzZs3VatWLUkP73dMTIyaNWtmdl5sbKwiIiJMn52dndM1G9ba2trsvnl4eMjR0VGhoaEqVaqUYmJiFBgYqH379unvv/9WfHy8YmNjk81Qf3RskoL6pPuVZMyYMXr11Vc1adKkZD+vAAAAAADLQLALvORWn1itfuv7KfxWuGmbWx43dczVMc3zHl1PNmkZgYSEBEkPZ/t16tTJNPv2UTly5Ei2LSYmRpI0cODAZAHfowGqJLPQNT28vLy0fPly/f777zp48KBGjRqlihUravTo0Rlq51GPr6VrMBhM154eQ4YMUcuWLbV//35t27ZN8+bN08SJE1WmTJlkxx47dkxjx45Vp06dVKlSJeXKlUtb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",
      "text/plain": [
       "<Figure size 1400x800 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "from sklearn.manifold import TSNE\n",
    "from transformers import BertModel, BertTokenizer\n",
    "import torch\n",
    "import numpy as np\n",
    "\n",
    "# List of sentences with the word \"bank\" having different meanings\n",
    "sentences = [\n",
    "    \"I need to go to the bank to deposit some money.\",\n",
    "    \"The river bank was flooded after the heavy rain.\",\n",
    "    \"She works at a bank downtown.\",\n",
    "    \"We set up our picnic by the river bank.\",\n",
    "    \"He withdrew cash from the bank yesterday.\",\n",
    "    \"There are many fish along the river bank.\",\n",
    "    \"The bank offers loans with low interest rates.\",\n",
    "    \"Children were playing on the river bank.\",\n",
    "    \"I have a meeting at the bank in the morning.\",\n",
    "    \"The erosion is affecting the river bank.\"\n",
    "]\n",
    "\n",
    "# Labels indicating the meaning of \"bank\" in each sentence\n",
    "labels = ['money', 'river', 'money', 'river', 'money', 'river', 'money', 'river', 'money', 'river']\n",
    "\n",
    "# Function to get CLS embeddings\n",
    "def get_cls_embedding(text, model, tokenizer):\n",
    "    inputs = tokenizer(text, return_tensors='pt')\n",
    "    with torch.no_grad():\n",
    "        outputs = model(**inputs)\n",
    "    cls_embedding = outputs.last_hidden_state[:, 0, :].squeeze().numpy()\n",
    "    return cls_embedding\n",
    "\n",
    "# Load BERT model and tokenizer\n",
    "model_name = 'bert-base-uncased'\n",
    "tokenizer = BertTokenizer.from_pretrained(model_name)\n",
    "model = BertModel.from_pretrained(model_name)\n",
    "\n",
    "# Get embeddings for all sentences\n",
    "embeddings = np.array([get_cls_embedding(sentence, model, tokenizer) for sentence in sentences])\n",
    "\n",
    "# Use t-SNE to reduce dimensionality to 2D\n",
    "tsne = TSNE(n_components=2, random_state=42, perplexity=5)\n",
    "embeddings_2d = tsne.fit_transform(embeddings)\n",
    "\n",
    "\n",
    "plt.figure(figsize=(14, 8))\n",
    "colors = {'money': 'blue', 'river': 'green'}\n",
    "label_to_scatter = {'money': 'Bank (Money)', 'river': 'Bank (River)'}\n",
    "for i, label in enumerate(labels):\n",
    "    plt.scatter(embeddings_2d[i, 0], embeddings_2d[i, 1], color=colors[label], label=label_to_scatter[label] if i == labels.index(label) else \"\")\n",
    "    plt.annotate(sentences[i], (embeddings_2d[i, 0], embeddings_2d[i, 1]), fontsize=10, alpha=0.75)\n",
    "\n",
    "plt.title('t-SNE visualization of BERT embeddings', fontsize=15)\n",
    "plt.xlabel('Dimension 1', fontsize=12)\n",
    "plt.ylabel('Dimension 2', fontsize=12)\n",
    "plt.legend(title=\"Contextual Meaning\")\n",
    "plt.grid(True)\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "70eb7f0e-9eca-4b7d-841e-5f4023127197",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABF0AAALNCAYAAAD9UR4rAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdeVyN2R8H8M+97fuelFRSCSH7Wlmzjj1iJLvBYOzGvjb2dawzqrGPdYydKMq+LyWJNEhIRUXbfX5/9OsZ170lKmE+79frvl46z3nOc86zpOfc7zlHIgiCACIiIiIiIiIiKlLSkq4AEREREREREdG3iJ0uRERERERERETFgJ0uRERERERERETFgJ0uRERERERERETFgJ0uRERERERERETFgJ0uRERERERERETFgJ0uRERERERERETFgJ0uRERERERERETFgJ0uRERERERERETFgJ0uRERE/zESiQTTp08v6Woo5evrC1tb2yIt08PDAx4eHuLPMTExkEgkCAgIKNLjTJ8+HRKJpEjLVCYgIAASiQSXLl0q9mN964KDgyGRSBAcHFzSVaEiZmtrC19f35Kuxif72utPRP9ipwsREVEJio6OxqBBg1CuXDloampCX18fDRo0wLJly/DmzZuSrh4V0ty5c7F3796SrsYHHTx48IvtiKOS87Xcv0REXzLVkq4AERHRf9WBAwfQtWtXaGhowMfHB5UrV0ZGRgZCQ0MxduxY3L59G+vWrSvy47558waqql/mnwDr16+HTCYr0jKPHj1apOXlZfLkyZgwYYJc2ty5c9GlSxd06NDhs9ThUx08eBC//vorO15Iztdy/36LIiMjIZXy+3Gib8GX+RcXERHRN+7Bgwfo3r07bGxscOLECZQuXVrcNnToUNy7dw8HDhwolmNramoWS7lFQU1NrcjLVFdXL/Iy35WamgodHR2oqqp+sZ1ZRPTlEwQBb9++hZaWFjQ0NEq6OkRURNh9SkREVALmz5+PlJQU/P7773IdLrnKly+PESNGiD9nZWVh1qxZsLe3h4aGBmxtbfHzzz8jPT1dbr9Lly7B09MTpqam0NLSgp2dHfr27SuX5/05XXLnIrl37x58fX1haGgIAwMD9OnTB2lpaQp127RpE2rUqAEtLS0YGxuje/fu+Oeffz7Y5tevX2PkyJGwtbWFhoYGzM3N0bx5c1y5ckXM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XeHu7l7SVSIiIqJiwEgXIiIios9s9erV+OGHH2Bubo4//vijpKtDRERExYRzuhARERERERERFQNGuhARERERERERFQN2uhARERERERERFQN2uhARERERERERFQOuXkRE9A0L79i0pKtARFSk4mfuL+kqEBEVqcYuWiVdhTwdUHMqkeO2yYwskeMWB0a6EBEREREREREVA0a6EBEREREREZECiZqkpKvw1WOkCxERERERERFRMWCkCxEREREREREpkKoy0qWwGOlCRERERERERFQM2OlCRERERERERFQMOLyIiIiIiIiIiBRI1BinUVg8g0RERERERERExYCRLkRERERERESkgBPpFh4jXYiIiIiIiIiIigE7XYiIiIiIiIiIigGHFxERERERERGRAokahxcVFiNdiIiIiIiIiIiKASNdiIiIiIiIiEgBJ9ItPEa6EBEREREREREVA0a6EBEREREREZECzulSeIx0ISIiIiIiIiIqBux0ISIiIiIiIiIqBhxeREREREREREQKOJFu4THShYiIiIiIiIioGDDShYiIiIiIiIgUSFQY6VJYjHQhIiIiIiIiIioG7HQhIiIiIiIiIioG7HTJg6+vLzp06FDS1fhiBQQEwNDQsMjL9fDwwMiRI4u83PdNnz4d1apVK/bjFNSXeL99rmtBRERERERfJqmKpEQ+35ISndPF19cXSUlJ2Lt3b0lW45MEBARg5MiRSEpKKumqKBUcHIzGjRsjMTGx0J0jtra2GDly5H/+BVwikWDPnj1fXOdIcdm9ezfU1NTEn3kfEP13GLVqD5MOXlA1NEZ6TDTifluBt1GRyjOrqMC0cw8YNm4BVWNTZDz+B/Eb1yP16kUxi3ZFF5h06AZNeweoGZviH7+peH0h7DO1hogICD60DUf3BeJVUgLK2DiiW7/xsHNwyTN/0P5NOHV0B16+eApdPUO41m2Gjj2HQ01dAwBwePfvuHo+CE8fx0BdXQPlnKqi4/cjYWFl+5laRERfC0a6EJFSxsbG0NPTK+lqENFnpt/AA6X6DMbz7X/g/ujBeBsTDZup86BiYKg0v3mPvjBq0RZP169A9PC+SDzyN6zHz4CmXXkxj1RTC29jovF03fLP1Aoion9dCjuCnYGL0LbrIPw8fyvK2DpixewheJX8Umn+C6cPYs/m5WjTdRCmLd2NXj9Mw+UzR7F3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jHx8fGBlZSXOC3P+/Hk8fvwY1apVw+PHjzF9+nTIZDKMGzdOLHPo0KHYsmUL/vrrL+jp6YnzwxgYGEBLq+CTH7PThYiIiIiIiIi+Wt26dcPz588xdepUPH36FNWqVcPhw4fFyXVjY2MhfacD6e3bt5g8eTLu378PXV1dtG7dGhs3bpRbGXb16tUAcqZ2eJe/vz98fX0LXDcuGU1E9A3jktFE9K3hktFE9K35kpeMvty4QYkct8bJsBI5bnFgpAsRERERERERKZBIS2Yi3W/J1zFAi4iIiIiIiIjoK8NIFyIiIiIiIiJSIC2hJaO/JYx0ISIiIiIiIiIqBux0ISIiIiIiIiIqBhxeREREREREREQKOJFu4THShYiIiIiIiIioGDDShYiIiIiIiIgUSKSM0ygsnkEiIiIiIiIiomLASBciIiIiIiIiUsA5XQqPkS5ERERERERERMWAnS5ERERERERERMWAw4uIiIiIiIiISIFUhcOLCouRLkRERERERERExYCRLkRERERERESkgBPpFh4jXYiIiIiIiIiIigE7XYiIiIiIiIiIigGHFxERERERERGRAomUcRqFxU4XIqJvmF2nxiVdBSKiImWgca+kq0BEVMRcSroCVIzY6UJERERERERECjiRbuExVoiIiIiIiIiIqBgw0oWIiIiIiIiIFDDSpfAY6UJEREREREREVAzY6UJEREREREREVAw4vIiIiIiIiIiIFHB4UeEx0oWIiIiIiIiIqBgw0oWIiIiIiIiIFEikjNMoLJ5BIiIiIiIiIqJiwE4XIiIiIiIiIqJiwOFFRERERERERKRAqsKJdAuLkS5ERERERERERMWAkS5EREREREREpIBLRhceI12IiIiIiIiIiIoBO12IiIiIiIiIiIoBhxcRERERERERkQKJlHEahcUzSERERERERERUDBjpQkREREREREQKOJFu4THShYiIiIiIiIioGDDShYiIiIiIiIgUMNKl8BjpQkRERERERERUDNjpQkRERERERERUDDi8iIiIiIiIiIgUcMnowuMZJCIiIiIiIiIqBux0oc9GIpFg7969JV2NT+Lh4YGRI0eWdDWKhK+vLzp06FDsxwkICIChoWGhy7G1tcXSpUsLXQ4REREREX0ciVRSIp9vCYcXUZF4/vw5pk6digMHDiA+Ph5GRkaoWrUqpk6digYNGpR0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zp07GDNmDObMmYMZM2bgwYMHGDNmDI4dOwY1NbUSHatYSZcaNWqU6KBERERERERE9GWT4MtvpFupUiUoKiriyZMnUsufPHkCIyMjudvMmDEDffv2xeDBgwEA1tbWePv2LX788UdMmzYNMTExSElJgZ2dnbBNTk4OTp06hRUrViAjIwOKioqFiq9YSZctW7YUuL5fv37F2S0RERERERERUaGpqKigUaNGCA0NRdeuXQEAYrEYoaGh8PHxkbtNeno6FBSkW9zmJVEkEgnatGmDq1evSq0fMGAA6tati8mTJxc64QIUM+kyZswYqZ+zsrKQnp4OFRUVaGhoMOlCRERERERE9JX7GipdAGD8+PHo378/7O3t0aRJEyxduhRv377FgAEDAOQWhhgbGwvNeN3d3REUFARbW1thetGMGTPg7u4ORUVFaGtro379+lLH0NTURMWKFWWWf0qxki6pqakyy27fvo3hw4dj4sSJxdklEREREREREVGR9e7dG0+fPsXMmTPx+PFjNGzYEEeOHBGa6yYlJUlVtkyfPh0ikQjTp0/Hw4cPYWBgAHd3d8ybN6/UYxNJJBJJae3swoUL+OGHH/LtEExERJ/XuBVp5R0CEVGpij4aU94hEBGVqoi/nMo7hHzFJzwol+Na1DIpl+OWhWJVuuS7MyUlPHr0qDR3SURERERERETl4GuZXvQlK1bS5cCBA1I/SyQSJCcnY8WKFXB0dCyVwIiIiIiIiIiIvmbFSrrkdQTOIxKJYGBggNatW2Px4sWlERcRERERERERlSNWupRcsZIuYrG4tOMgIiIiIiIiIvqmlGpPFyIiIiIiIiL6NkgkrHQpKYVPD5HVvXt3zJ8/X2b5ggUL0LNnzxIHRURERERERET0tStW0uXUqVNwc3OTWd6xY0ecOnWqxEEREREREREREX3tijW9KC0tDSoqKjLLlZWV8fr16xIHRURERERERETli410S65YlS7W1tbYtWuXzPKdO3fCysqqxEEREREREREREX3tilXpMmPGDHz//fdISEhA69atAQChoaHYsWMH/vjjj1INkIiIiIiIiIg+P1a6lFyxki7u7u7Yt28fAgICsHv3bqirq6NBgwY4fvw4nJycSjtGIiIiIiIiIqKvTrFvGd2pUyd06tSpNGMhIiIiIiIiIvpmFKunS56YmBj89ttv+O2333Dp0qXSiklKWFgYRCIRXr58WSb7/5ipqSmWLl36WY71ocTERIhEIly+fLnMj1Ve51hc6enp6N69O3R0dITXwuc6B5FIhH379pVoH97e3ujatWuJ9iGRSPDjjz+iQoUKn+11Ik9wcDD09PRKfb/Ozs4YO3Zsqe/3S1YarwsiIiIiorIkgahcHt+SYlW6pKSkoE+fPggLCxM+gL18+RIuLi7YuXMnDAwMCrUfkajgizlr1iw4OzsXJ8Rii46Ohqam5mc9JhVs8+bNOH36NM6cOYNKlSpBV1e3vEP67I4cOYLg4GCEhYWhZs2aqFSpEkQiEfbu3VtmH9xNTU0xduzY/1wy5HNZtmwZJBJJeYdBJJejtTJa2ypDW0OER8/E2HMqA0kpYrljR3ZTR21jRZnlNxKzsf7gewCAijLQubkKrGsqQUNNhBevJTgdm4kz17PL9DyIiPJ871YVHt+boIK+ChLupWHJ2juIu/1G7thfAmxga60ns/xM9HNM8r8GAPhprAXc2hhJrT8f8wITZl8t9diJ6OtWrKTLqFGj8ObNG1y/fh2WlpYAgBs3bqB///4YPXo0duzYUaj9JCcnC//etWsXZs6cifj4eGGZlpYWLly4UJwQiywzMxMqKiqFThgVl0QiQU5ODpSUij2z6z8nISEBlpaWqF+/fnmHUm4SEhJQpUoVODg4lPq+s7KyoKysXOr7/a8q7PX8LyYP6evQsLYSurZQwR9hGbj/OAdODVUw9Dt1BG5LR9o72UThpkPvoKj475commoi+PZRx+U7/yZUurZQRW1jRfx2LAMvXotRt7oiujup4tVbCa4n5nyW8yKi/67WLQzgM7gWFq28hRu33qDXd8YI8reGx7BovHyVJTP+p4DrUFb69/earo4yNi23x8nIp1LjzsW8QMDSm8LPWVn8MoW+PRLJt1V1Uh6KNb3oyJEjWLVqlZBwAQArKyusXLkShw8fLvR+jIyMhIeuri5EIpHUMi0tLWFsTEwM7O3toaGhAQcHB6nkDADs378fdnZ2UFNTQ82aNeHn54fs7Py/Qcsr7Z83bx6qVq0KCwsLANJTbzw9PdG7d2+p7bKyslCpUiVs2bIFACAWixEYGAgzMzOoq6vDxsYGu3fvFsbnTY86fPgwGjVqBFVVVUREROQb182bN+Hg4AA1NTXUr18f4eHhwrqcnBwMGjRIOJaFhQWWLVsm97wWLVqEKlWqoGLFihg5ciSysmT/Q8mzYcMG6OnpITQ0VGadRCKBgYGB1Dk1bNgQVapUEX6OiIiAqqoq0tPTAQBBQUGwtraGpqYmTExMMGLECKSlpQnj79+/D3d3d+jr60NTUxP16tXDoUOH5Mbm7OyMxYsX49SpUxCJRPlWPiUlJaFLly7Q0tKCjo4OevXqhSdPnkiNWb16NWrVqgUVFRVYWFhg69atUutv376NVq1aQU1NDVZWVjh27JjMcR48eIBevXpBT08PFSpUQJcuXZCYmCisz8nJwfjx46Gnp4eKFSti0qRJn6xmeP78OTw8PGBsbAwNDQ1YW1tLJS69vb0xatQoJCUlQSQSwdTUFKampgCAbt26CcvyfOq9IBKJsHr1anz33XfQ1NTEvHnzZGJydnbG/fv3MW7cOIhEIpmqtKNHj8LS0hJaWlpwdXWVSqACua8pS0tLqKmpoW7duli1alWB1wDIfS9NmjQJFSpUgJGREWbPni21/uXLlxg8eDAMDAygo6OD1q1bIzY2VlifkJCALl26wNDQEFpaWmjcuDGOHz8urP/pp5/QtGlTmePa2NjA398fp06dgrKyMh4/fiy1fuzYsWjZsmW+ccu7nkV5r+ZxdnbG6NGjC7wGRJ+Dc0NlnL2ehai4bDxJleCPkxnIzJagqaX8LwvSM4A36RLhUcdEEVnZQOwHSRdTIwVE38xCwsMcpL6R4Oz1bDx6JkZ1Q9kKGSKi0tanazX8dTQZh0KfIPFBOhauuo33GWJ0bmckd/ybtGy8eJklPOwb6iMjIwcnI6STLplZYqlxb96yeo+IZBUr6SIWi+V+k6usrAyxWH75cUlNmzYNixcvxoULF6CkpISBAwcK606fPo1+/fphzJgxuHHjBtauXYvg4GC5HyY/FBoaivj4eBw7dgwHDx6UWe/l5YW//vpLKmFw9OhRpKeno1u3bgCAwMBAbNmyBWvWrMH169cxbtw4/PDDD1LJEgCYMmUKfv75Z8TFxaFBgwb5xjRx4kRMmDABly5dQvPmzeHu7o7nz58DyL3u1apVwx9//IEbN25g5syZ+Omnn/D7779L7ePkyZNISEjAyZMnsXnzZgQHByM4OFju8RYsWIApU6bg77//Rps2bWTWi0QitGrVCmFhYQCA1NRUxMXF4d27d7h5MzezHx4ejsaNG0NDQwMAoKCggOXLl+P69evYvHkzTpw4gUmTJgn7HDlyJDIyMnDq1ClcvXoV8+fPl0qwfWjPnj0YMmQImjdvjuTkZOzZs0dmjFgsRpcuXfDixQuEh4fj2LFjuHv3rlTCbO/evRgzZgwmTJiAa9euYejQoRgwYABOnjwp7OP777+HiooKzp8/jzVr1mDy5MlSx8nKykKHDh2gra2N06dPIzIyUkg6ZGZmAgAWL16M4OBgbNy4EREREXjx4gX27t0r99zyvH//Ho0aNUJISAiuXbuGH3/8EX379kVUVBSA3Gko/v7+qFatGpKTkxEdHY3o6GgAwKZNm4RlQOHfC7Nnz0a3bt1w9epVqffSh9e9WrVq8Pf3R3JyslRSJT09HYsWLcLWrVtx6tQpJCUlwdfXV1i/bds2zJw5E/PmzUNcXBwCAgIwY8YMbN68ucDrsHnzZmhqauL8+fNYsGAB/P39pRJfPXv2REpKCg4fPoyYmBjY2dmhTZs2ePHiBQAgLS0Nbm5uCA0NxaVLl+Dq6gp3d3ckJSUByH0/R0VFISEhQdjn9evXceXKFXh6eqJVq1aoWbOmVDIuKysL27Ztk3uNCrqehX2vFvUaEJU1RQWgWmUF3Hrwb/WJBMDtf3JQw6hwCZKmVkq4dDsbmR989kh8LEZ9MyXoauYmcGsbK8JATwHxD/gBhYjKlpKSCHVqa+NCbKqwTCIBLlxORT0LnULto3M7I4SeSsH7DOnPObb19fDX1ubYvroxJgw3h442K9np2yOGqFwe35Ji/WZo3bo1xowZgx07dqBq1aoAgIcPH2LcuHFyP7iXhnnz5gm3o54yZQo6deqE9+/fQ01NDX5+fpgyZQr69+8PAKhZsybmzJmDSZMmYdasWfnuU1NTExs2bICKiorc9R06dICmpib27t2Lvn37AgC2b9+O7777Dtra2sjIyEBAQACOHz+O5s2bC8eOiIjA2rVrpW6f7e/vj3bt2n3yPH18fNC9e3cAuZUZR44cwa+//opJkyZBWVkZfn5+wlgzMzOcPXsWv//+O3r16iUs19fXx4oVK6CoqIi6deuiU6dOCA0NxZAhQ6SONXnyZGzduhXh4eGoV69evjE5Oztj7dq1AIBTp07B1tYWRkZGCAsLQ926dREWFiZ1rh/2ADE1NcXcuXMxbNgwodohKSkJ3bt3h7W1tXDN8lOhQgVoaGhARUUFRkbyv40IDQ3F1atXce/ePZiYmAAAtmzZgnr16iE6OhqNGzfGokWL4O3tjREjRgAAxo8fj3PnzmHRokVwcXHB8ePHcfPmTRw9elR4TQcEBKBjx47CcXbt2gWxWIwNGzYIlR+bNm2Cnp4ewsLC0L59eyxduhRTp07F999/DwBYs2YNjh49mu/5AYCxsbFU0mLUqFE4evQofv/9dzRp0gS6urrQ1taGoqKizDXQ09OTWlbY94KnpycGDBhQ4HVXVFSEtra2zDGzsrKwZs0a1KpVC0Dua9bf319YP2vWLCxevFi4BmZmZkICKC8ueRo0aCDEaG5ujhUrViA0NBTt2rVDREQEoqKikJKSAlVVVQDAokWLsG/fPuzevRs//vgjbGxsYGNjI+xvzpw52Lt3Lw4cOAAfHx/Uq1cPNjY22L59O2bMmAEgN0HUtGlT1K5dGwAwaNAgbNq0CRMnTgQA/PXXX3j//r3U+0seedezMO/VolyDwsjIyEBGRobUsuysLCgpqxZqeyJNdREUFUR489E0ojfpElTW+/T3NNUrK6BqRUXsCpV+Hf4ZnoHerVUxe4AmcnIkkADYdSIDdx+VzRc1RER5dHWUoaQowotU6arvFy+zUKOaxie3tzTXRi1TLfy8/JbU8vMxLxB+5hmSn7yHcRU1/NjXDItmW2PYxEsoo++giegrVaxKlxUrVuD169cwNTVFrVq1UKtWLZiZmeH169f45ZdfSjtGAJCqDsmb2pKSkgIAiI2Nhb+/P7S0tITHkCFDkJycLEx5kcfa2jrfhAsAKCkpoVevXti2bRsA4O3bt9i/fz+8vLwAAHfu3EF6ejratWsndewtW7ZIfZsOAPb29oU6z7zkTd7x7e3tERcXJyxbuXIlGjVqBAMDA2hpaWHdunXCN/l56tWrB0XFf7+RrFKlinCt8ixevBjr169HREREgQkXAHBycsKNGzfw9OlThIeHw9nZGc7OzggLC0NWVhbOnDkjNe3n+PHjaNOmDYyNjaGtrY2+ffvi+fPnwnMxevRozJ07F46Ojpg1axauXLlSqGuTn7i4OJiYmAgJFyB3upuenp5w7eLi4uDo6Ci1naOjo9R6ExMTIeECSD8XQO7r7M6dO9DW1hae6woVKuD9+/dISEjAq1evkJycLDWFJe85LEhOTg7mzJkDa2trVKhQAVpaWjh69KjM81oYhX0vFPb1KI+GhoaQcAGkX19v375FQkICBg0aJBXD3LlzZd4TH/u4AuzD/cbGxiItLQ0VK1aU2u+9e/eE/aalpcHX1xeWlpbQ09ODlpYW4uLipK6jl5cXtm/fDiB36tyOHTuE9zOQO+Xnzp07OHfuHIDcuzX16tXrk8215V3PwrxXi3INCiMwMBC6urpSj+hjiwu9PVFJNbVSxqNnOTJNd1vaKKOGoSI2HHyHxb+/w/6ITHR3UkWdapxeRERfts7tjXDnXppM093Q008RGfUcd++/xelzzzHZ/xqs6ujAtr5e+QRKRF+sYlW6mJiY4OLFiwgNDRU+tFpaWqJt27alGtyHPpzOlFdlkDeVKS0tDX5+fsI36x9SU1PLd5+FuUuRl5cXnJyckJKSgmPHjkFdXR2urq7CcQEgJCQExsbGUtvlfRtflGN9ys6dO+Hr64vFixejefPm0NbWxsKFC3H+/HmpcR9P/RKJRDLTvlq2bImQkBD8/vvvmDJlSoHHzUsGhIeHIzw8HPPmzYORkRHmz5+P6OhoZGVlCQ1eExMT0blzZwwfPhzz5s1DhQoVEBERgUGDBiEzMxMaGhoYPHgwOnTogJCQEPz9998IDAzE4sWLMWrUqBJfo7KUlpaGRo0aCUm4D5WkAfPChQuxbNkyLF26VOiFM3bsWGHKUlFjLMx7oSSvR3mvr7y+NXnvifXr18v0T/kwEVjY/X74Hq9SpYowze1DeXdQ8/X1xbFjx7Bo0SLUrl0b6urq6NGjh9R19PDwwOTJk3Hx4kW8e/cODx48kJqGVrlyZbi7u2PTpk0wMzPD4cOH5R7zYx9fz8K+V4tyDQpj6tSpGD9+vNSyab/m38+J6GNv30mQI5ZAW126rFdbQ4TX6QX3p1JRAmzNlXDkvPTvLmVFoFMzFWw69B437udOW0p+LoZxJQU42yrj1j9spEtEZefV6yxk50hQQV/6/9gKesp4nlrw31pqqgpo07Iyft2W+MnjPHryHqmvMlGtqjpirrwsQcREX5Zv7fbN5aHISRexWIzg4GDs2bMHiYmJEIlEMDMzg66uLiQSySdvA10W7OzsEB8fL0wRKE0ODg4wMTHBrl27cPjwYfTs2VP4YGRlZQVVVVUkJSVJTa8piXPnzqFVq1YAgOzsbMTExMDHxwcAEBkZCQcHB2GKDIBPVg/kp0mTJvDx8YGrqyuUlJSkprd8TCQSoWXLlti/fz+uX7+OFi1aQENDAxkZGVi7di3s7e2FD50xMTEQi8VYvHgxFBRyC6nk9bEwMTHBsGHDMGzYMEydOhXr168vdtLF0tISDx48wIMHD4Rqlxs3buDly5ewsrISxkRGRkpNb4mMjJRa/+DBAyQnJwuVVHnVDnns7Oywa9cuVK5cGTo68ucAV6lSBefPn5d5Du3s7PKNPzIyEl26dMEPP/wAIPc9duvWLSG2/CgrKyMnR/rDSmm+F1RUVGT2/ymGhoaoWrUq7t69K1VBUlJ2dnZ4/PgxlJSUpJoGfygyMhLe3t5Cv6W0tDSpJscAUK1aNTg5OWHbtm149+4d2rVrh8qVK0uNGTx4MDw8PFCtWjXUqlVLpkKqMErzvVoUqqqqMglfJeW0fEYTycoRA/+kiFHHRBHX7uW+/0UAzKspIuJKwQk8m9pKUFIELtySHqegACgpiiD+KGcjlgAK/DuOiMpYdrYEt+68QaMG+jh9LrdPokgENLLRx56QhwVu69LCAMrKCjga9qTAcQBgUFEFutrKePai6F+aEdG3rUhJF4lEgu+++w6HDh2CjY0NrK2tIZFIEBcXB29vb+zZswf79u0ro1DzN3PmTHTu3BnVq1dHjx49oKCggNjYWFy7dg1z584t8f49PT2xZs0a3Lp1S2i8CgDa2trw9fXFuHHjIBaL0aJFC7x69QqRkZHQ0dEpsH9FflauXAlzc3NYWlpiyZIlSE1NFZp4mpubY8uWLTh69CjMzMywdetWREdHw8zMrFjn5eDggEOHDqFjx45QUlKS6sXyMWdnZ0yYMAH29vZC09tWrVph27ZtQv8LAKhduzaysrLwyy+/wN3dHZGRkVizZo3UvsaOHYuOHTuiTp06SE1NxcmTJ6XuhFVUbdu2hbW1Nby8vLB06VJkZ2djxIgRcHJyEqZ9TJw4Eb169YKtrS3atm2Lv/76C3v27BHubtO2bVvUqVMH/fv3x8KFC/H69WtMmzZN6jheXl5YuHAhunTpIjS2vX//Pvbs2YNJkyahWrVqGDNmDH7++WeYm5ujbt26CAoKwsuXLwuM39zcHLt378aZM2egr6+PoKAgPHny5JNJF1NTU4SGhsLR0RGqqqrQ19cv1feCqakpTp06hT59+kBVVRWVKlUq1HZ+fn4YPXo0dHV14erqioyMDFy4cAGpqakyVRiF1bZtWzRv3hxdu3bFggULUKdOHTx69AghISHo1q0b7O3tYW5ujj179sDd3R0ikQgzZsyQWyXi5eWFWbNmITMzE0uWLJFZ36FDB+jo6GDu3LlSvWqKorTfq3n69esHY2NjBAYGlmg/RAUJu5wFz7aqeJAixv0nOXCyUYGKkgjn43Kb3nq2zb3Vc8hZ6Q8WzayUcfVuNtLfS+8vIwu48zAH3zmqICsnE6mvxahlrAj7ukrYHyHd+4WIqCzs3PcPpo2ri5t33iDu1hv06mIMdTUFhBzPvWPh9HEWePo8E2u33JParnO7Kjh97hlev5Fu+q2upoABHqYIP/MUz1MzYWykjhEDauJh8jtEXXzx2c6L6HPgLaNLrkg9XYKDg3Hq1Cnh7iA7duzAzp07ERsbi+PHj+PEiRPCrZQ/pw4dOuDgwYP4+++/0bhxYzRr1gxLlixBjRo1SmX/Xl5euHHjBoyNjWW+9Z4zZw5mzJiBwMBAWFpawtXVFSEhIcX+cPXzzz/j559/ho2NDSIiInDgwAHhw+7QoUPx/fffo3fv3mjatCmeP38u9U16cbRo0QIhISGYPn16gf14nJyckJOTI9W7xdnZWWaZjY0NgoKCMH/+fNSvXx/btm2T+YCYk5ODkSNHCterTp06hbqlcH5EIhH2798PfX19tGrVCm3btkXNmjWxa9cuYUzXrl2xbNkyLFq0CPXq1cPatWuxadMmIXYFBQXs3bsX7969Q5MmTTB48GCZO/5oaGjg1KlTqF69Or7//ntYWlpi0KBBeP/+vVD5MmHCBPTt2xf9+/cXppXkVV7kZ/r06bCzs0OHDh3g7OwMIyMjqVsJ52fx4sU4duwYTExMYGtrC6B03wv+/v5ITExErVq1ijR9avDgwdiwYQM2bdoEa2trODk5ITg4uEQJB5FIhEOHDqFVq1YYMGAA6tSpgz59+uD+/fswNDQEkHurcn19fTg4OMDd3R0dOnSQW2HUo0cPoceQvOusoKAAb29v5OTkoF+/fsWKtyzeq0BuE+qPb89NVNou38nGgchMuDZRwcQ+GjCupIC1f71D2v+b6+prK0BHQ/oPMAM9EWpWVRQSMx/bcvQ9klLE+KGdKiZ7aaBNIxUcOpeJM9d49yIiKnsnIp5i5cYEDPYyxabljWBupoUJs64i9WVuZZ6hgRoqVpDu82hirA6bero4eOyxzP5yxEAtU038PL0+dqxpgimjLRB/5w1GTLmMrOyCp2IS0X+PSJLXjKEQ2rdvj9atW+fbAyQgIADh4eGfvFsLEdGXbNCgQXj69CkOHDhQ3qGU2LgVnF5ERN+W6KMx5R0CEVGpivirdFpVlIWLt56Xy3Ht6lQsl+OWhSJVuly5ckVoIitPx44dERsbW+KgiIjKw6tXrxAREYHt27d/8Y2diYiIiIjKmgSicnl8S4rU0+XFixdCKb88hoaGSE1NLXFQRETloUuXLoiKisKwYcPQrl278g6HiIiIiIi+ckVKuuTk5EBJKf9NFBUVkZ3N+dlE9HUqzO2hiYiIiIj+K9hIt+SKfPcib29vmVuS5snI4F0IiIiIiIiIiIiAIiZdCnML5OLe7YOIiIiIiIiIvhzfWn+V8lCkpMumTZvKKg4iIiIiIiIiom9Kke5eREREREREREREhVOkShciIiIiIiIi+m9gI92SY6ULEREREREREVEZYKULEREREREREckQl3cA3wBWuhARERERERERlQEmXYiIiIiIiIiIygCnFxERERERERGRDDbSLTlWuhARERERERERlQFWuhARERERERGRDAlY6VJSrHQhIiIiIiIiIioDrHQhIiIiIiIiIhns6VJyrHQhIiIiIiIiIioDTLoQEREREREREZUBTi8iIiIiIiIiIhlspFtyrHQhIiIiIiIiIioDrHQhIiIiIiIiIhliSXlH8PVjpQsRERERERERURlg0oWIiIiIiIiIqAxwehERERERERERyWAj3ZJj0oWI6BsWaLq1vEMgIipV4h5PyzsEIqJS5lTeAVAZYtKFiIiIiIiIiGRIJKx0KSn2dCEiIiIiIiIiKgOsdCEiIiIiIiIiGRLeMrrEWOlCRERERERERFQGmHQhIiIiIiIiIioDnF5ERERERERERDLEvGV0ibHShYiIiIiIiIioDLDShYiIiIiIiIhk8JbRJcdKFyIiIiIiIiL6qq1cuRKmpqZQU1ND06ZNERUVVeD4pUuXwsLCAurq6jAxMcG4cePw/v17YX1gYCAaN24MbW1tVK5cGV27dkV8fHyR42LShYiIiIiIiIi+Wrt27cL48eMxa9YsXLx4ETY2NujQoQNSUlLkjt++fTumTJmCWbNmIS4uDr/++it27dqFn376SRgTHh6OkSNH4ty5czh27BiysrLQvn17vH37tkixiSQS3nmb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RERERERERFQGWOlCRERERERERDJY6VJyrHQhIiIiIiIiIioDrHQhIiIiIiIiIhliiai8Q/jqsdKFiIiIiIiIiKgMMOlCRERERERERFQGOL2IiIiIiIiIiGSwkW7JsdKFiIiIiIiIiKgMsNKFiIiIiIiIiGSw0qXkWOlCRERERERERFQGmHQhIiIiIiIiIioDnF5ERERERERERDLEnF5UYqx0ISIiIiIiIiIqA6x0ISIiIiIiIiIZEomovEP46rHShYiIiIiIiIioDLDShYiIiIiIiIhk8JbRJcdKFyIiIiIiIiKiMsCkCxERERERERFRGeD0IiIiIiIiIiKSwVtGlxwrXYiIiIiIiIiIygArXYiIiIiIiIhIBhvplhyTLkRE37DtGsPLOwQiolLlZHW3vEMgIipVtco7ACpTnF5ERERERERERFQGWOlCRERERERERDI4vajkWOlCRERERERERFQGWOlCRERERERERDJ4y+iSY6ULEREREREREVEZYKULEREREREREclgT5eSY6ULEREREREREVEZYNKFiIiIiIiIiKgMcHoREREREREREckQi8s7gq8fK12IiIiIiIiIiMoAK12IiIiIiIiISAYb6ZYcK12IiIiIiIiIiMoAky5ERERERERERGWA04uIiIiIiIiISAanF5UcK12IiIiIiIiIiMoAky5EREREREREJEMsKZ9HcaxcuRKmpqZQU1ND06ZNERUVVeD4pUuXwsLCAurq6jAxMcG4cePw/v37Eu1THiZdiIiIiIiIiOirtWvXLowfPx6zZs3CxYsXYWNjgw4dOiAlJUXu+O3bt2PKlCmYNWsW4uLi8Ouvv2LXrl346aefir3P/DDpQkREREREREQyJBJJuTyKKigoCEOGDMGAAQNgZWWFNWvWQENDAxs3bpQ7/syZM3B0dISnpydMTU3Rvn17eHh4SFWyFHWf+WHShYiIiIiIiIi+GBkZGXj9+rXUIyMjQ+7YzMxMxMTEoG3btsIyBQUFtG3bFmfPnpW7jYODA2JiYoQky927d3Ho0CG4ubkVe5/5YdKFiIiIiIiIiL4YgYGB0NXVlXoEBgbKHfvs2TPk5OTA0NBQarmhoSEeP34sdxtPT0/4+/ujRYsWUFZWRq1ateDs7CxMLyrOPvPDpAsRERERERERyZBIyucxdepUvHr1SuoxderUUjuvsLAw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4MGDB+UdCpWBjSfKOwIiotLlZCr/TlpERF+rWjVrlncI+VrwZ9n0hvyUSd2/nS8aWelC35zU1FSEhYUhLCws39sv/5etWrUKjRs3RsWKFREZGYmFCxdK3daYiIiIiIiISgeTLvTNsbW1RWpqKubPnw8LC4vyDueLc/v2bcydOxcvXrxA9erVMWHCBEydOrW8wyIiIiIiIvrmMOlC35zi3jXmv2LJkiVYsmRJeYdBRERERERfODYjKblvZ6IUEREREREREdEXhJUuRERERERERCRDXG63jP52sNKFiIiIiIiIiKgMMOlCRERERERERFQGOL2IiIiIiIiIiGSwkW7JsdKFiIiIiIiIiKgMsNKFiIiIiIiIiGSw0qXkWOlCRERERERERFQGWOlCRERERERERDLELHUpMVa6EBERERERERGVASZdiIiIiIiIiIjKAKcXEREREREREZEMibi8I/j6sdKFiIiIiIiIiKgMsNKFiIiIiIiIiGRI2Ei3xFjpQkRERERERERUBph0ISIiIiIiIiIqA5xeREREREREREQyxGykW2KsdCEiIiIiIiIiKgOsdCEiIiIiIiIiGWykW3KsdCEiIiIiIiIiKgOsdCEiIiIiIiIiGWIWupQYK12IiIiIiIiIiMoAK12IiL5h+/+IL+8QiIhKVS/rTeUdAhFR6Rrxc3lHQGWISRciIiIiIiIikiHh/KIS4/QiIiIiIiIiIqIywEoXIiIiIiIiIpLBO0aXHCtdiIiIiIiIiIjKAJMuRERERERERERlgNOLiIiIiIiIiEiGmI10S4yVLkREREREREREZYCVLkREREREREQkQ8JOuiXGShciIiIiIiIiojLAShciIiIiIiIikiERl3cEXz9WuhARERERERERlQEmXYiIiIiIiIiIygCnFxERERERERGRDDEb6ZYYK12IiIiIiIiIiMoAK12IiIiIiIiISAZvGV1yrHQhIiIiIiIiIioDTLoQEREREREREZUBTi8iIiIiIiIiIhliMacXlRQrXYiIiIiIiIiIygArXYiIiIiIiIhIBvvolhwrXYiIiIiIiIiIygArXYiIiIiIiIhIhoQ9XUqMlS5ERERERERERGWASRciIiIiIiIi+qqtXLkSpqamUFNTQ9OmTREVFZXvWGdnR/H18QAAWs9JREFUZ4hEIplHp06dhDFpaWnw8fFBtWrV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L9C3b1+4u7vjxo0b+OOPP2BsbFzsvqipqWHZsmVYs2YNrK2t0alTp0JvGxISgn79+mHs2LFwcnKCr68voqOjc02OW1QymQy9evVCXFyclEA3R2mf19WqVUOXLl3Qvn17fPbZZ6hVq5bC3cE2bNiAJ0+ewN3dHX379pVu210SixcvRvfu3dGyZUtcu3YNQHbenuKOoCEqrOMxzxGy8wF6f26GJd/ZoUpFTQQu/0e6vbOZiTqMDRUHytpYqKN6NR2FBLpvOxWXhlVb76LLZyZYNsUebRobYt7aO4hPfFXm+0NE9JljRYxqWgOrT8Wj19YjSHjwFMt9PWGqm/0/1d3nrxQS4A5s4IQ+darhh5NX0G3zYcw8fA4edhUwuVVtqUxaeibmRcbhi82HMe3gWdS2NsUK38ZQV+XXKyJSJBNFzfZK9AGLjIxEixYt8OTJk1K/Da8QAg4ODhg6dKhSXo3SEBUVhSZNmuDGjRuoWrVqqddPH6dOQxLKuwtERKVqS83874BHRPSh0Rs6r7y7kKdvvn9SLu2unlD8H43fN8zpQlQKHjx4IN1COCdZU0nt3r0benp6cHBwwI0bNzBy5Eg0btyYARciIiIiIvpPcIxGyTHoQlQKKlSoADMzM6xdu7ZEU3ne9vz5c0yYMAHJyckwMzND69atERwcXCp1ExERERERUdlj0IU+Kc2bNy+TaG1Z1NmvXz+Fu1ERERERERH9l+Qfyj2j32PM9EREREREREREVAYYdCEiIiIiIiIiKgOcXkRERERERERESphIt+Q40oWIiIiIiIiIqAxwpAsRERERERERKRFMpFtiHOlCRERERERERFQGGHQhIiIiIiIiIioDnF5EREREREREREo4vajkONKFiIiIiIiIiKgMcKQLERERERERESmR85bRJcaRLkREREREREREZYAjXYiIiIiIiIhICXO6lBxHuhARERERERERlQEGXYiIiIiIiIiIygCnFxERERERERGREsFEuiXGkS5ERERERERERGWAI12IiIiIiIiISImciXRLjCNdiIiIiIiIiIjKAIMuRERERERERERlgNOLiIiIiIiIiEiJ4PSiEuNIFyIiIiIiIiKiMsCRLkRERERERESkhLeMLjkGXYiIPmJtfBzLuwtERKXqJ9V55d0FIqJS9U15d4DKFIMuRERERERERKREyOXl3YUPHnO6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",
      "text/plain": [
       "<Figure size 1000x800 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns\n",
    "from sklearn.manifold import TSNE\n",
    "from transformers import BertModel, BertTokenizer\n",
    "import torch\n",
    "import numpy as np\n",
    "from sklearn.metrics.pairwise import cosine_similarity\n",
    "\n",
    "# List of sentences with the word \"bank\" having different meanings\n",
    "sentences = [\n",
    "    \"I need to go to the bank to deposit some money.\",\n",
    "    \"The river bank was flooded after the heavy rain.\",\n",
    "    \"She works at a bank downtown.\",\n",
    "    \"We set up our picnic by the river bank.\",\n",
    "    \"He withdrew cash from the bank yesterday.\",\n",
    "    \"There are many fish along the river bank.\",\n",
    "    \"The bank offers loans with low interest rates.\",\n",
    "    \"Children were playing on the river bank.\",\n",
    "    \"I have a meeting at the bank in the morning.\",\n",
    "    \"The erosion is affecting the river bank.\"\n",
    "]\n",
    "\n",
    "# Labels indicating the meaning of \"bank\" in each sentence\n",
    "labels = ['money', 'river', 'money', 'river', 'money', 'river', 'money', 'river', 'money', 'river']\n",
    "\n",
    "\n",
    "queries = [\n",
    "    \"I opened a new savings account at the bank.\",  # money\n",
    "    \"The fisherman stood by the river bank all day.\"  # river\n",
    "]\n",
    "\n",
    "# Function to get CLS embeddings\n",
    "def get_cls_embedding(text, model, tokenizer):\n",
    "    inputs = tokenizer(text, return_tensors='pt')\n",
    "    with torch.no_grad():\n",
    "        outputs = model(**inputs)\n",
    "    cls_embedding = outputs.last_hidden_state[:, 0, :].squeeze().numpy()\n",
    "    return cls_embedding\n",
    "\n",
    "# Load BERT model and tokenizer\n",
    "model_name = 'bert-base-uncased'\n",
    "tokenizer = BertTokenizer.from_pretrained(model_name)\n",
    "model = BertModel.from_pretrained(model_name)\n",
    "\n",
    "# Get embeddings for all sentences\n",
    "embeddings = np.array([get_cls_embedding(sentence, model, tokenizer) for sentence in sentences])\n",
    "new_embeddings = np.array([get_cls_embedding(sentence, model, tokenizer) for sentence in queries])\n",
    "\n",
    "# Calculate cosine similarities\n",
    "similarities = cosine_similarity(embeddings, new_embeddings)\n",
    "\n",
    "# Reorder sentences and similarities based on labels\n",
    "sorted_indices = sorted(range(len(labels)), key=lambda i: labels[i])\n",
    "sorted_sentences = [sentences[i] for i in sorted_indices]\n",
    "sorted_similarities = similarities[sorted_indices, :]\n",
    "\n",
    "queries = [\n",
    "    \"I opened a new savings account\\nat the bank.\",  # money\n",
    "    \"The fisherman stood by\\nthe river bank all day.\"  # river\n",
    "]\n",
    "plt.figure(figsize=(10, 8))\n",
    "sns.heatmap(sorted_similarities, annot=True, xticklabels=queries, \n",
    "            yticklabels=sorted_sentences, cmap='coolwarm', fmt='.2f')\n",
    "plt.title('Cosine similarity between documents and queries')\n",
    "plt.xlabel('Queries')\n",
    "plt.ylabel('Documents')\n",
    "plt.savefig('bi-encoder.jpg', format='jpeg', bbox_inches='tight')\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3012235e-99f3-45bc-85b6-a73ebe9c7002",
   "metadata": {
    "tags": []
   },
   "source": [
    "# Tokenization"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "795caff4-ec2b-4761-929c-0d42102a1ceb",
   "metadata": {},
   "source": [
    "## simple splitting no overlap"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "62339873-5dbf-4ec4-bed8-3a15f7b44d13",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<span style=\"background-color:#ff9999\">To be or not to be, that is the question.\n",
       "Whether tis nobler in the mind to suffer\n",
       "The slings and arrows of outrageous fortune\n",
       "Or to take arms against a sea of troubles,\n",
       "And by opposing, end them. To die, to sleep\n",
       "No more, and by a sleep to say we end,\n",
       "The heartache and the thousand natural shocks\n",
       "That</span><br><br><span style=\"background-color:#99ff99\"> flesh is heir to, tis a consummation\n",
       "Devoutly to be wished.</span><br><br>"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from transformers import BertTokenizer\n",
    "from IPython.display import HTML\n",
    "from langchain.text_splitter import TokenTextSplitter\n",
    "\n",
    "# Initialize the tokenizer and text splitter\n",
    "tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')\n",
    "text_splitter = TokenTextSplitter(\n",
    "    chunk_size = 80,\n",
    "    chunk_overlap = 0\n",
    ")\n",
    "\n",
    "# Function to color and display text chunks\n",
    "def color_text_chunks(text, text_splitter):\n",
    "    docs = text_splitter.create_documents([text])\n",
    "    chunks = [doc.page_content for doc in docs]  # Access the text attribute\n",
    "\n",
    "    colored_text = \"\"\n",
    "    colors = ['#ff9999', '#99ff99', '#9999ff', '#ffff99', '#99ffff', '#ff99ff', '#cccccc',\n",
    "              '#ff6666', '#66ff66', '#6666ff', '#ffff66', '#66ffff', '#ff66ff', '#ccccff',\n",
    "              '#996699', '#669999', '#999966', '#669966', '#966696', '#696669']\n",
    "\n",
    "    for i, chunk in enumerate(chunks):\n",
    "        color = colors[i % len(colors)]\n",
    "        chunk_html = f'<span style=\"background-color:{color}\">{chunk}</span>'\n",
    "        colored_text += chunk_html + '<br><br>'\n",
    "\n",
    "    return HTML(colored_text)\n",
    "\n",
    "\n",
    "text = '''To be or not to be, that is the question.\n",
    "Whether tis nobler in the mind to suffer\n",
    "The slings and arrows of outrageous fortune\n",
    "Or to take arms against a sea of troubles,\n",
    "And by opposing, end them. To die, to sleep\n",
    "No more, and by a sleep to say we end,\n",
    "The heartache and the thousand natural shocks\n",
    "That flesh is heir to, tis a consummation\n",
    "Devoutly to be wished.'''\n",
    "\n",
    "color_text_chunks(text, text_splitter)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "45ec589e-076e-4490-814f-d8d419652709",
   "metadata": {},
   "source": [
    "## simple splitting with overlap"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "f946cae9-2b11-42eb-819e-b4d09d1dd75b",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<span style=\"background-color:#ff9999\">to</span> <span style=\"background-color:#ff9999\">be</span> <span style=\"background-color:#ff9999\">or</span> <span style=\"background-color:#ff9999\">not</span> <span style=\"background-color:#ff9999\">to</span> <span style=\"background-color:#ff9999\">be</span> <span style=\"background-color:#ff9999\">,</span> <span style=\"background-color:#ff9999\">that</span> <span style=\"background-color:#ff9999\">is</span> <span style=\"background-color:#ff9999\">the</span> <span style=\"background-color:#ff9999\">question</span> <span style=\"background-color:#ff9999\">.</span> <span style=\"background-color:#ff9999\">whether</span> <span style=\"background-color:#ff9999\">tis</span> <span style=\"background-color:#ff9999\">noble</span> <span style=\"background-color:#ff9999\">##r</span> <span style=\"background-color:#ff9999\">in</span> <span style=\"background-color:#ff9999\">the</span> <span style=\"background-color:#ff9999\">mind</span> <span style=\"background-color:#ff9999\">to</span> <span style=\"background-color:#ff9999\">suffer</span> <span style=\"background-color:#ff9999\">the</span> <span style=\"background-color:#ff9999\">sling</span> <span style=\"background-color:#ff9999\">##s</span> <span style=\"background-color:#ff9999\">and</span> <span style=\"background-color:#ff9999\">arrows</span> <span style=\"background-color:#ff9999\">of</span> <span style=\"background-color:#ff9999\">outrageous</span> <span style=\"background-color:#ff9999\">fortune</span> <span style=\"background-color:#ff9999\">or</span> <span style=\"background-color:#ff9999\">to</span> <span style=\"background-color:#ff9999\">take</span> <span style=\"background-color:#ff9999\">arms</span> <span style=\"background-color:#ff9999\">against</span> <span style=\"background-color:#ff9999\">a</span> <span style=\"background-color:#ff9999\">sea</span> <span style=\"background-color:#ff9999\">of</span> <span style=\"background-color:#ff9999\">troubles</span> <span style=\"background-color:#ff9999\">,</span> <span style=\"background-color:#ff9999\">and</span> <span style=\"background-color:#ff9999\">by</span> <span style=\"background-color:#ff9999\">opposing</span> <span style=\"background-color:#ff9999\">,</span> <span style=\"background-color:#ff9999\">end</span> <span style=\"background-color:#ff9999\">them</span> <span style=\"background-color:#ff9999\">.</span> <span style=\"background-color:#ff9999\">to</span> <span style=\"background-color:#ff9999\">die</span> <span style=\"background-color:#ff9999\">,</span> <span style=\"background-color:#ff9999\">to</span> <span style=\"background-color:#ff9999\">sleep</span> <span style=\"background-color:#ff9999\">no</span> <span style=\"background-color:#cccc99\">more</span> <span style=\"background-color:#cccc99\">,</span> <span style=\"background-color:#cccc99\">and</span> <span style=\"background-color:#cccc99\">by</span> <span style=\"background-color:#cccc99\">a</span> <span style=\"background-color:#cccc99\">sleep</span> <span style=\"background-color:#cccc99\">to</span> <span style=\"background-color:#cccc99\">say</span> <span style=\"background-color:#cccc99\">we</span> <span style=\"background-color:#cccc99\">end</span> <span style=\"background-color:#cccc99\">,</span> <span style=\"background-color:#cccc99\">the</span> <span style=\"background-color:#cccc99\">heart</span> <span style=\"background-color:#cccc99\">##ache</span> <span style=\"background-color:#cccc99\">and</span> <span style=\"background-color:#cccc99\">the</span> <span style=\"background-color:#cccc99\">thousand</span> <span style=\"background-color:#cccc99\">natural</span> <span style=\"background-color:#cccc99\">shocks</span> <span style=\"background-color:#cccc99\">that</span> <br><br><span style=\"background-color:#cccc99\">and</span> <span style=\"background-color:#cccc99\">by</span> <span style=\"background-color:#cccc99\">a</span> <span style=\"background-color:#cccc99\">sleep</span> <span style=\"background-color:#cccc99\">to</span> <span style=\"background-color:#cccc99\">say</span> <span style=\"background-color:#cccc99\">we</span> <span style=\"background-color:#cccc99\">end</span> <span style=\"background-color:#cccc99\">,</span> <span style=\"background-color:#cccc99\">the</span> <span style=\"background-color:#cccc99\">heart</span> <span style=\"background-color:#cccc99\">##ache</span> <span style=\"background-color:#cccc99\">and</span> <span style=\"background-color:#cccc99\">the</span> <span style=\"background-color:#cccc99\">thousand</span> <span style=\"background-color:#cccc99\">natural</span> <span style=\"background-color:#cccc99\">shocks</span> <span style=\"background-color:#cccc99\">that</span> <span style=\"background-color:#cccc99\">flesh</span> <span style=\"background-color:#cccc99\">is</span> <span style=\"background-color:#99cccc\">heir</span> <span style=\"background-color:#99cccc\">to</span> <span style=\"background-color:#99cccc\">,</span> <span style=\"background-color:#99cccc\">tis</span> <span style=\"background-color:#99cccc\">a</span> <span style=\"background-color:#99cccc\">con</span> <span style=\"background-color:#99cccc\">##sum</span> <span style=\"background-color:#99cccc\">##mation</span> <span style=\"background-color:#99cccc\">devout</span> <span style=\"background-color:#99cccc\">##ly</span> <span style=\"background-color:#99cccc\">to</span> <span style=\"background-color:#99cccc\">be</span> <span style=\"background-color:#99cccc\">wished</span> <span style=\"background-color:#99cccc\">.</span> <br><br>"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from transformers import BertTokenizer\n",
    "from IPython.display import HTML\n",
    "from langchain.text_splitter import TokenTextSplitter\n",
    "from collections import defaultdict\n",
    "\n",
    "# Initialize the tokenizer and text splitter\n",
    "tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')\n",
    "\n",
    "# Function to color and display text chunks\n",
    "def color_text_chunks(text, chunk_size, overlap):\n",
    "    text_splitter = TokenTextSplitter(\n",
    "        chunk_size=chunk_size,\n",
    "        chunk_overlap=overlap\n",
    "    )\n",
    "    docs = text_splitter.create_documents([text])\n",
    "    chunks = [doc.page_content for doc in docs]  # Access the text attribute\n",
    "\n",
    "    # Define colors\n",
    "    colors = ['#ff9999', '#99ff99', '#9999ff', '#ffff99', '#99ffff', '#ff99ff', '#cccccc',\n",
    "              '#ff6666', '#66ff66', '#6666ff', '#ffff66', '#66ffff', '#ff66ff', '#ccccff',\n",
    "              '#996699', '#669999', '#999966', '#669966', '#966696', '#696669']\n",
    "\n",
    "    # Define color positions for each chunk\n",
    "    color_positions = []\n",
    "    for i in range(len(chunks)):\n",
    "        chunk_tokens = tokenizer.tokenize(chunks[i])\n",
    "        chunk_length = len(chunk_tokens)\n",
    "        if chunk_length > overlap:\n",
    "            unique_length = chunk_length - overlap\n",
    "            chunk_colors = [colors[i % len(colors)]] * unique_length + \\\n",
    "                           [blend_colors([colors[i % len(colors)], colors[(i+1) % len(colors)]])] * overlap\n",
    "        else:\n",
    "            chunk_colors = [blend_colors([colors[i % len(colors)], colors[(i+1) % len(colors)]])] * chunk_length\n",
    "        color_positions.append(chunk_colors)\n",
    "\n",
    "    # Adjust colors for overlapping tokens in the next chunk\n",
    "    for i in range(1, len(color_positions)):\n",
    "        overlap_color = blend_colors([colors[(i-1) % len(colors)], colors[i % len(colors)]])\n",
    "        color_positions[i] = [overlap_color] * overlap + color_positions[i][overlap:]\n",
    "\n",
    "    # Generate colored HTML\n",
    "    colored_text = \"\"\n",
    "    for i, chunk in enumerate(chunks):\n",
    "        tokens = tokenizer.tokenize(chunk)\n",
    "        for j, token in enumerate(tokens):\n",
    "            color = color_positions[i][j]\n",
    "            token_html = f'<span style=\"background-color:{color}\">{token}</span>'\n",
    "            colored_text += token_html + ' '\n",
    "        colored_text += '<br><br>'\n",
    "\n",
    "    return HTML(colored_text)\n",
    "\n",
    "def blend_colors(color_list):\n",
    "    # Simple function to blend multiple colors\n",
    "    r, g, b = 0, 0, 0\n",
    "    for color in color_list:\n",
    "        c = int(color[1:], 16)\n",
    "        r += c >> 16\n",
    "        g += (c >> 8) & 0xff\n",
    "        b += c & 0xff\n",
    "    n = len(color_list)\n",
    "    r = min(r // n, 255)\n",
    "    g = min(g // n, 255)\n",
    "    b = min(b // n, 255)\n",
    "    return f'#{r:02x}{g:02x}{b:02x}'\n",
    "\n",
    "text = '''To be or not to be, that is the question.\n",
    "Whether tis nobler in the mind to suffer\n",
    "The slings and arrows of outrageous fortune\n",
    "Or to take arms against a sea of troubles,\n",
    "And by opposing, end them. To die, to sleep\n",
    "No more, and by a sleep to say we end,\n",
    "The heartache and the thousand natural shocks\n",
    "That flesh is heir to, tis a consummation\n",
    "Devoutly to be wished.'''\n",
    "\n",
    "chunk_size = 80\n",
    "overlap = 20\n",
    "\n",
    "color_text_chunks(text, chunk_size, overlap)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "695f1548-888a-4c68-8581-0cb429439bf9",
   "metadata": {
    "tags": []
   },
   "source": [
    "## Character splitting on the new line"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "b52b6169-9f80-4c08-84eb-9053bda4a0b7",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<span style=\"background-color:#ff9999\">To be or not to be, that is the question.\n",
       "Whether tis nobler in the mind to suffer\n",
       "The slings and arrows of outrageous fortune\n",
       "Or to take arms against a sea of troubles,\n",
       "And by opposing, end them. To die, to sleep\n",
       "No more, and by a sleep to say we end,</span><br><br><span style=\"background-color:#99ff99\">The heartache and the thousand natural shocks\n",
       "That flesh is heir to, tis a consummation\n",
       "Devoutly to be wished.</span><br><br>"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from transformers import BertTokenizer\n",
    "from IPython.display import HTML\n",
    "from langchain.text_splitter import CharacterTextSplitter\n",
    "# Initialize the tokenizer and text splitter\n",
    "tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')\n",
    "text_splitter = CharacterTextSplitter(\n",
    "    separator = \"\\n\",\n",
    "    chunk_size = 256,\n",
    "    chunk_overlap = 0\n",
    ")\n",
    "\n",
    "# Function to color and display text chunks\n",
    "def color_text_chunks(text, text_splitter):\n",
    "    docs = text_splitter.create_documents([text])\n",
    "    chunks = [doc.page_content for doc in docs]  # Access the text attribute\n",
    "\n",
    "    colored_text = \"\"\n",
    "    colors = ['#ff9999', '#99ff99', '#9999ff', '#ffff99', '#99ffff', '#ff99ff', '#cccccc',\n",
    "              '#ff6666', '#66ff66', '#6666ff', '#ffff66', '#66ffff', '#ff66ff', '#ccccff',\n",
    "              '#996699', '#669999', '#999966', '#669966', '#966696', '#696669']\n",
    "\n",
    "    for i, chunk in enumerate(chunks):\n",
    "        color = colors[i % len(colors)]\n",
    "        chunk_html = f'<span style=\"background-color:{color}\">{chunk}</span>'\n",
    "        colored_text += chunk_html + '<br><br>'\n",
    "\n",
    "    return HTML(colored_text)\n",
    "\n",
    "# Example usage\n",
    "text = '''To be or not to be, that is the question.\n",
    "Whether tis nobler in the mind to suffer\n",
    "The slings and arrows of outrageous fortune\n",
    "Or to take arms against a sea of troubles,\n",
    "And by opposing, end them. To die, to sleep\n",
    "No more, and by a sleep to say we end,\n",
    "The heartache and the thousand natural shocks\n",
    "That flesh is heir to, tis a consummation\n",
    "Devoutly to be wished.'''\n",
    "\n",
    "color_text_chunks(text, text_splitter)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "73176c7a-f302-43f0-9676-c45f3e7973ac",
   "metadata": {},
   "source": [
    "## Recursive character splitting"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "633a8321-dfe4-4973-8766-90ae02b2977b",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<span style=\"background-color:#ff9999\">to</span> <span style=\"background-color:#ff9999\">be</span> <span style=\"background-color:#ff9999\">or</span> <span style=\"background-color:#ff9999\">not</span> <span style=\"background-color:#ff9999\">to</span> <span style=\"background-color:#ff9999\">be</span> <span style=\"background-color:#ff9999\">,</span> <span style=\"background-color:#ff9999\">that</span> <span style=\"background-color:#ff9999\">is</span> <span style=\"background-color:#ff9999\">the</span> <span style=\"background-color:#ff9999\">question</span> <span style=\"background-color:#ff9999\">.</span> <span style=\"background-color:#ff9999\">whether</span> <span style=\"background-color:#ff9999\">tis</span> <span style=\"background-color:#ff9999\">noble</span> <span style=\"background-color:#ff9999\">##r</span> <span style=\"background-color:#ff9999\">in</span> <span style=\"background-color:#ff9999\">the</span> <span style=\"background-color:#ff9999\">mind</span> <span style=\"background-color:#ff9999\">to</span> <span style=\"background-color:#ff9999\">suffer</span> <span style=\"background-color:#ff9999\">the</span> <span style=\"background-color:#ff9999\">sling</span> <span style=\"background-color:#ff9999\">##s</span> <span style=\"background-color:#ff9999\">and</span> <span style=\"background-color:#ff9999\">arrows</span> <span style=\"background-color:#ff9999\">of</span> <span style=\"background-color:#ff9999\">outrageous</span> <span style=\"background-color:#ff9999\">fortune</span> <span style=\"background-color:#ff9999\">or</span> <span style=\"background-color:#ff9999\">to</span> <span style=\"background-color:#ff9999\">take</span> <span style=\"background-color:#ff9999\">arms</span> <span style=\"background-color:#ff9999\">against</span> <span style=\"background-color:#ff9999\">a</span> <span style=\"background-color:#ff9999\">sea</span> <span style=\"background-color:#ff9999\">of</span> <span style=\"background-color:#ff9999\">troubles</span> <span style=\"background-color:#ff9999\">,</span> <span style=\"background-color:#ff9999\">and</span> <span style=\"background-color:#ff9999\">by</span> <span style=\"background-color:#ff9999\">opposing</span> <span style=\"background-color:#ff9999\">,</span> <span style=\"background-color:#cccc99\">end</span> <span style=\"background-color:#cccc99\">them</span> <span style=\"background-color:#cccc99\">.</span> <span style=\"background-color:#cccc99\">to</span> <span style=\"background-color:#cccc99\">die</span> <span style=\"background-color:#cccc99\">,</span> <span style=\"background-color:#cccc99\">to</span> <span style=\"background-color:#cccc99\">sleep</span> <span style=\"background-color:#cccc99\">no</span> <span style=\"background-color:#cccc99\">more</span> <span style=\"background-color:#cccc99\">,</span> <span style=\"background-color:#cccc99\">and</span> <span style=\"background-color:#cccc99\">by</span> <span style=\"background-color:#cccc99\">a</span> <span style=\"background-color:#cccc99\">sleep</span> <span style=\"background-color:#cccc99\">to</span> <span style=\"background-color:#cccc99\">say</span> <span style=\"background-color:#cccc99\">we</span> <span style=\"background-color:#cccc99\">end</span> <span style=\"background-color:#cccc99\">,</span> <br><br><span style=\"background-color:#cccc99\">the</span> <span style=\"background-color:#cccc99\">heart</span> <span style=\"background-color:#cccc99\">##ache</span> <span style=\"background-color:#cccc99\">and</span> <span style=\"background-color:#cccc99\">the</span> <span style=\"background-color:#cccc99\">thousand</span> <span style=\"background-color:#cccc99\">natural</span> <span style=\"background-color:#cccc99\">shocks</span> <span style=\"background-color:#cccc99\">that</span> <span style=\"background-color:#cccc99\">flesh</span> <span style=\"background-color:#cccc99\">is</span> <span style=\"background-color:#cccc99\">heir</span> <span style=\"background-color:#cccc99\">to</span> <span style=\"background-color:#cccc99\">,</span> <span style=\"background-color:#cccc99\">tis</span> <span style=\"background-color:#cccc99\">a</span> <span style=\"background-color:#cccc99\">con</span> <span style=\"background-color:#cccc99\">##sum</span> <span style=\"background-color:#cccc99\">##mation</span> <span style=\"background-color:#cccc99\">devout</span> <span style=\"background-color:#99cccc\">##ly</span> <span style=\"background-color:#99cccc\">to</span> <span style=\"background-color:#99cccc\">be</span> <span style=\"background-color:#99cccc\">wished</span> <span style=\"background-color:#99cccc\">.</span> <br><br>"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from transformers import BertTokenizer\n",
    "from IPython.display import HTML\n",
    "from langchain.text_splitter import TokenTextSplitter, RecursiveCharacterTextSplitter\n",
    "from collections import defaultdict\n",
    "\n",
    "# Initialize the tokenizer and text splitter\n",
    "tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')\n",
    "\n",
    "# Function to color and display text chunks\n",
    "def color_text_chunks(text, chunk_size, overlap):\n",
    "    text_splitter = RecursiveCharacterTextSplitter(\n",
    "        separators = [\"\\n\\n\", \"\\n\", \" \", \"\"],\n",
    "        chunk_size=chunk_size,\n",
    "        chunk_overlap=overlap\n",
    "    )\n",
    "    docs = text_splitter.create_documents([text])\n",
    "    chunks = [doc.page_content for doc in docs]  # Access the text attribute\n",
    "\n",
    "    # Define colors\n",
    "    colors = ['#ff9999', '#99ff99', '#9999ff', '#ffff99', '#99ffff', '#ff99ff', '#cccccc',\n",
    "              '#ff6666', '#66ff66', '#6666ff', '#ffff66', '#66ffff', '#ff66ff', '#ccccff',\n",
    "              '#996699', '#669999', '#999966', '#669966', '#966696', '#696669']\n",
    "\n",
    "    # Define color positions for each chunk\n",
    "    color_positions = []\n",
    "    for i in range(len(chunks)):\n",
    "        chunk_tokens = tokenizer.tokenize(chunks[i])\n",
    "        chunk_length = len(chunk_tokens)\n",
    "        if chunk_length > overlap:\n",
    "            unique_length = chunk_length - overlap\n",
    "            chunk_colors = [colors[i % len(colors)]] * unique_length + \\\n",
    "                           [blend_colors([colors[i % len(colors)], colors[(i+1) % len(colors)]])] * overlap\n",
    "        else:\n",
    "            chunk_colors = [blend_colors([colors[i % len(colors)], colors[(i+1) % len(colors)]])] * chunk_length\n",
    "        color_positions.append(chunk_colors)\n",
    "\n",
    "    # Adjust colors for overlapping tokens in the next chunk\n",
    "    for i in range(1, len(color_positions)):\n",
    "        overlap_color = blend_colors([colors[(i-1) % len(colors)], colors[i % len(colors)]])\n",
    "        color_positions[i] = [overlap_color] * overlap + color_positions[i][overlap:]\n",
    "\n",
    "    # Generate colored HTML\n",
    "    colored_text = \"\"\n",
    "    for i, chunk in enumerate(chunks):\n",
    "        tokens = tokenizer.tokenize(chunk)\n",
    "        for j, token in enumerate(tokens):\n",
    "            color = color_positions[i][j]\n",
    "            token_html = f'<span style=\"background-color:{color}\">{token}</span>'\n",
    "            colored_text += token_html + ' '\n",
    "        colored_text += '<br><br>'\n",
    "\n",
    "    return HTML(colored_text)\n",
    "\n",
    "def blend_colors(color_list):\n",
    "    # Simple function to blend multiple colors\n",
    "    r, g, b = 0, 0, 0\n",
    "    for color in color_list:\n",
    "        c = int(color[1:], 16)\n",
    "        r += c >> 16\n",
    "        g += (c >> 8) & 0xff\n",
    "        b += c & 0xff\n",
    "    n = len(color_list)\n",
    "    r = min(r // n, 255)\n",
    "    g = min(g // n, 255)\n",
    "    b = min(b // n, 255)\n",
    "    return f'#{r:02x}{g:02x}{b:02x}'\n",
    "\n",
    "text = '''To be or not to be, that is the question.\n",
    "Whether tis nobler in the mind to suffer\n",
    "The slings and arrows of outrageous fortune\n",
    "Or to take arms against a sea of troubles,\n",
    "And by opposing, end them. To die, to sleep\n",
    "No more, and by a sleep to say we end,\n",
    "The heartache and the thousand natural shocks\n",
    "That flesh is heir to, tis a consummation\n",
    "Devoutly to be wished.'''\n",
    "\n",
    "chunk_size = 256\n",
    "overlap = 20\n",
    "\n",
    "color_text_chunks(text, chunk_size, overlap)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "e0c5d237-79f1-403d-ab73-de3371a45154",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "## Markdown chunking"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "b6826110-10dc-4315-9d84-2da1c495374d",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<span style=\"background-color:#ff9999\">#</span> <span style=\"background-color:#ff9999\">retrieval</span> <span style=\"background-color:#ff9999\">-</span> <span style=\"background-color:#ff9999\">augmented</span> <span style=\"background-color:#ff9999\">generation</span> <span style=\"background-color:#ff9999\">(</span> <span style=\"background-color:#ff9999\">rag</span> <span style=\"background-color:#ff9999\">)</span> <span style=\"background-color:#ff9999\">#</span> <span style=\"background-color:#ff9999\">#</span> <span style=\"background-color:#ff9999\">introduction</span> <br><br><span style=\"background-color:#99ff99\">retrieval</span> <span style=\"background-color:#99ff99\">-</span> <span style=\"background-color:#99ff99\">augmented</span> <span style=\"background-color:#99ff99\">generation</span> <span style=\"background-color:#99ff99\">(</span> <span style=\"background-color:#99ff99\">rag</span> <span style=\"background-color:#99ff99\">)</span> <span style=\"background-color:#99ff99\">is</span> <span style=\"background-color:#99ff99\">a</span> <span style=\"background-color:#99ff99\">technique</span> <span style=\"background-color:#99ff99\">in</span> <span style=\"background-color:#99ff99\">natural</span> <span style=\"background-color:#99ff99\">language</span> <span style=\"background-color:#99ff99\">processing</span> <span style=\"background-color:#99ff99\">(</span> <span style=\"background-color:#99ff99\">nl</span> <span style=\"background-color:#99ff99\">##p</span> <span style=\"background-color:#99ff99\">)</span> <span style=\"background-color:#99ff99\">that</span> <span style=\"background-color:#99ff99\">combines</span> <span style=\"background-color:#99ff99\">the</span> <span style=\"background-color:#99ff99\">strengths</span> <span style=\"background-color:#99ff99\">of</span> <span style=\"background-color:#99ff99\">retrieval</span> <span style=\"background-color:#99ff99\">-</span> <span style=\"background-color:#99ff99\">based</span> <span style=\"background-color:#99ff99\">methods</span> <span style=\"background-color:#99ff99\">and</span> <span style=\"background-color:#99ff99\">generation</span> <span style=\"background-color:#99ff99\">-</span> <span style=\"background-color:#99ff99\">based</span> <span style=\"background-color:#99ff99\">methods</span> <span style=\"background-color:#99ff99\">.</span> <span style=\"background-color:#99ff99\">it</span> <span style=\"background-color:#99ff99\">is</span> <span style=\"background-color:#99ff99\">designed</span> <span style=\"background-color:#99ff99\">to</span> <span style=\"background-color:#99ff99\">enhance</span> <br><br><span style=\"background-color:#9999ff\">the</span> <span style=\"background-color:#9999ff\">quality</span> <span style=\"background-color:#9999ff\">and</span> <span style=\"background-color:#9999ff\">accuracy</span> <span style=\"background-color:#9999ff\">of</span> <span style=\"background-color:#9999ff\">generated</span> <span style=\"background-color:#9999ff\">text</span> <span style=\"background-color:#9999ff\">by</span> <span style=\"background-color:#9999ff\">lever</span> <span style=\"background-color:#9999ff\">##aging</span> <span style=\"background-color:#9999ff\">a</span> <span style=\"background-color:#9999ff\">large</span> <span style=\"background-color:#9999ff\">corpus</span> <span style=\"background-color:#9999ff\">of</span> <span style=\"background-color:#9999ff\">documents</span> <span style=\"background-color:#9999ff\">during</span> <span style=\"background-color:#9999ff\">the</span> <span style=\"background-color:#9999ff\">text</span> <span style=\"background-color:#9999ff\">generation</span> <span style=\"background-color:#9999ff\">process</span> <span style=\"background-color:#9999ff\">.</span> <br><br><span style=\"background-color:#ffff99\">#</span> <span style=\"background-color:#ffff99\">#</span> <span style=\"background-color:#ffff99\">how</span> <span style=\"background-color:#ffff99\">rag</span> <span style=\"background-color:#ffff99\">works</span> <span style=\"background-color:#ffff99\">#</span> <span style=\"background-color:#ffff99\">#</span> <span style=\"background-color:#ffff99\">#</span> <span style=\"background-color:#ffff99\">retrieval</span> <span style=\"background-color:#ffff99\">component</span> <br><br><span style=\"background-color:#99ffff\">the</span> <span style=\"background-color:#99ffff\">retrieval</span> <span style=\"background-color:#99ffff\">component</span> <span style=\"background-color:#99ffff\">is</span> <span style=\"background-color:#99ffff\">responsible</span> <span style=\"background-color:#99ffff\">for</span> <span style=\"background-color:#99ffff\">searching</span> <span style=\"background-color:#99ffff\">a</span> <span style=\"background-color:#99ffff\">large</span> <span style=\"background-color:#99ffff\">data</span> <span style=\"background-color:#99ffff\">##set</span> <span style=\"background-color:#99ffff\">or</span> <span style=\"background-color:#99ffff\">knowledge</span> <span style=\"background-color:#99ffff\">base</span> <span style=\"background-color:#99ffff\">to</span> <span style=\"background-color:#99ffff\">find</span> <span style=\"background-color:#99ffff\">relevant</span> <span style=\"background-color:#99ffff\">documents</span> <span style=\"background-color:#99ffff\">or</span> <span style=\"background-color:#99ffff\">passages</span> <span style=\"background-color:#99ffff\">that</span> <span style=\"background-color:#99ffff\">are</span> <span style=\"background-color:#99ffff\">related</span> <span style=\"background-color:#99ffff\">to</span> <span style=\"background-color:#99ffff\">the</span> <span style=\"background-color:#99ffff\">input</span> <span style=\"background-color:#99ffff\">query</span> <span style=\"background-color:#99ffff\">.</span> <span style=\"background-color:#99ffff\">this</span> <span style=\"background-color:#99ffff\">component</span> <span style=\"background-color:#99ffff\">typically</span> <span style=\"background-color:#99ffff\">uses</span> <br><br><span style=\"background-color:#ff99ff\">advanced</span> <span style=\"background-color:#ff99ff\">search</span> <span style=\"background-color:#ff99ff\">algorithms</span> <span style=\"background-color:#ff99ff\">and</span> <span style=\"background-color:#ff99ff\">em</span> <span style=\"background-color:#ff99ff\">##bed</span> <span style=\"background-color:#ff99ff\">##ding</span> <span style=\"background-color:#ff99ff\">##s</span> <span style=\"background-color:#ff99ff\">to</span> <span style=\"background-color:#ff99ff\">identify</span> <span style=\"background-color:#ff99ff\">the</span> <span style=\"background-color:#ff99ff\">most</span> <span style=\"background-color:#ff99ff\">per</span> <span style=\"background-color:#ff99ff\">##tine</span> <span style=\"background-color:#ff99ff\">##nt</span> <span style=\"background-color:#ff99ff\">information</span> <span style=\"background-color:#ff99ff\">.</span> <br><br><span style=\"background-color:#cccccc\">#</span> <span style=\"background-color:#cccccc\">#</span> <span style=\"background-color:#cccccc\">#</span> <span style=\"background-color:#cccccc\">generation</span> <span style=\"background-color:#cccccc\">component</span> <br><br><span style=\"background-color:#ff6666\">the</span> <span style=\"background-color:#ff6666\">generation</span> <span style=\"background-color:#ff6666\">component</span> <span style=\"background-color:#ff6666\">takes</span> <span style=\"background-color:#ff6666\">the</span> <span style=\"background-color:#ff6666\">retrieved</span> <span style=\"background-color:#ff6666\">documents</span> <span style=\"background-color:#ff6666\">as</span> <span style=\"background-color:#ff6666\">additional</span> <span style=\"background-color:#ff6666\">context</span> <span style=\"background-color:#ff6666\">and</span> <span style=\"background-color:#ff6666\">generates</span> <span style=\"background-color:#ff6666\">a</span> <span style=\"background-color:#ff6666\">coherent</span> <span style=\"background-color:#ff6666\">and</span> <span style=\"background-color:#ff6666\">context</span> <span style=\"background-color:#ff6666\">##ually</span> <span style=\"background-color:#ff6666\">accurate</span> <span style=\"background-color:#ff6666\">response</span> <span style=\"background-color:#ff6666\">.</span> <span style=\"background-color:#ff6666\">this</span> <span style=\"background-color:#ff6666\">is</span> <span style=\"background-color:#ff6666\">usually</span> <span style=\"background-color:#ff6666\">achieved</span> <span style=\"background-color:#ff6666\">using</span> <span style=\"background-color:#ff6666\">transform</span> <span style=\"background-color:#ff6666\">##er</span> <span style=\"background-color:#ff6666\">-</span> <span style=\"background-color:#ff6666\">based</span> <span style=\"background-color:#ff6666\">models</span> <span style=\"background-color:#ff6666\">like</span> <br><br><span style=\"background-color:#66ff66\">bert</span> <span style=\"background-color:#66ff66\">or</span> <span style=\"background-color:#66ff66\">gp</span> <span style=\"background-color:#66ff66\">##t</span> <span style=\"background-color:#66ff66\">,</span> <span style=\"background-color:#66ff66\">which</span> <span style=\"background-color:#66ff66\">can</span> <span style=\"background-color:#66ff66\">process</span> <span style=\"background-color:#66ff66\">the</span> <span style=\"background-color:#66ff66\">input</span> <span style=\"background-color:#66ff66\">query</span> <span style=\"background-color:#66ff66\">along</span> <span style=\"background-color:#66ff66\">with</span> <span style=\"background-color:#66ff66\">the</span> <span style=\"background-color:#66ff66\">retrieved</span> <span style=\"background-color:#66ff66\">information</span> <span style=\"background-color:#66ff66\">to</span> <span style=\"background-color:#66ff66\">produce</span> <span style=\"background-color:#66ff66\">high</span> <span style=\"background-color:#66ff66\">-</span> <span style=\"background-color:#66ff66\">quality</span> <span style=\"background-color:#66ff66\">text</span> <span style=\"background-color:#66ff66\">.</span> <br><br><span style=\"background-color:#6666ff\">#</span> <span style=\"background-color:#6666ff\">#</span> <span style=\"background-color:#6666ff\">advantages</span> <span style=\"background-color:#6666ff\">of</span> <span style=\"background-color:#6666ff\">rag</span> <br><br><span style=\"background-color:#ffff66\">1</span> <span style=\"background-color:#ffff66\">.</span> <span style=\"background-color:#ffff66\">*</span> <span style=\"background-color:#ffff66\">*</span> <span style=\"background-color:#ffff66\">enhanced</span> <span style=\"background-color:#ffff66\">accuracy</span> <span style=\"background-color:#ffff66\">*</span> <span style=\"background-color:#ffff66\">*</span> <span style=\"background-color:#ffff66\">:</span> <span style=\"background-color:#ffff66\">by</span> <span style=\"background-color:#ffff66\">using</span> <span style=\"background-color:#ffff66\">relevant</span> <span style=\"background-color:#ffff66\">external</span> <span style=\"background-color:#ffff66\">documents</span> <span style=\"background-color:#ffff66\">,</span> <span style=\"background-color:#ffff66\">rag</span> <span style=\"background-color:#ffff66\">can</span> <span style=\"background-color:#ffff66\">generate</span> <span style=\"background-color:#ffff66\">more</span> <span style=\"background-color:#ffff66\">accurate</span> <span style=\"background-color:#ffff66\">and</span> <span style=\"background-color:#ffff66\">informed</span> <span style=\"background-color:#ffff66\">responses</span> <span style=\"background-color:#ffff66\">.</span> <br><br><span style=\"background-color:#66ffff\">2</span> <span style=\"background-color:#66ffff\">.</span> <span style=\"background-color:#66ffff\">*</span> <span style=\"background-color:#66ffff\">*</span> <span style=\"background-color:#66ffff\">context</span> <span style=\"background-color:#66ffff\">##ual</span> <span style=\"background-color:#66ffff\">relevance</span> <span style=\"background-color:#66ffff\">*</span> <span style=\"background-color:#66ffff\">*</span> <span style=\"background-color:#66ffff\">:</span> <span style=\"background-color:#66ffff\">the</span> <span style=\"background-color:#66ffff\">retrieval</span> <span style=\"background-color:#66ffff\">component</span> <span style=\"background-color:#66ffff\">ensures</span> <span style=\"background-color:#66ffff\">that</span> <span style=\"background-color:#66ffff\">the</span> <span style=\"background-color:#66ffff\">generated</span> <span style=\"background-color:#66ffff\">text</span> <span style=\"background-color:#66ffff\">is</span> <span style=\"background-color:#66ffff\">context</span> <span style=\"background-color:#66ffff\">##ually</span> <span style=\"background-color:#66ffff\">relevant</span> <span style=\"background-color:#66ffff\">to</span> <span style=\"background-color:#66ffff\">the</span> <span style=\"background-color:#66ffff\">query</span> <span style=\"background-color:#66ffff\">.</span> <br><br><span style=\"background-color:#ff66ff\">3</span> <span style=\"background-color:#ff66ff\">.</span> <span style=\"background-color:#ff66ff\">*</span> <span style=\"background-color:#ff66ff\">*</span> <span style=\"background-color:#ff66ff\">scala</span> <span style=\"background-color:#ff66ff\">##bility</span> <span style=\"background-color:#ff66ff\">*</span> <span style=\"background-color:#ff66ff\">*</span> <span style=\"background-color:#ff66ff\">:</span> <span style=\"background-color:#ff66ff\">rag</span> <span style=\"background-color:#ff66ff\">can</span> <span style=\"background-color:#ff66ff\">be</span> <span style=\"background-color:#ff66ff\">scaled</span> <span style=\"background-color:#ff66ff\">to</span> <span style=\"background-color:#ff66ff\">work</span> <span style=\"background-color:#ff66ff\">with</span> <span style=\"background-color:#ff66ff\">vast</span> <span style=\"background-color:#ff66ff\">data</span> <span style=\"background-color:#ff66ff\">##set</span> <span style=\"background-color:#ff66ff\">##s</span> <span style=\"background-color:#ff66ff\">,</span> <span style=\"background-color:#ff66ff\">making</span> <span style=\"background-color:#ff66ff\">it</span> <span style=\"background-color:#ff66ff\">suitable</span> <span style=\"background-color:#ff66ff\">for</span> <span style=\"background-color:#ff66ff\">applications</span> <span style=\"background-color:#ff66ff\">requiring</span> <span style=\"background-color:#ff66ff\">extensive</span> <span style=\"background-color:#ff66ff\">knowledge</span> <span style=\"background-color:#ff66ff\">bases</span> <span style=\"background-color:#ff66ff\">.</span> <br><br><span style=\"background-color:#ccccff\">#</span> <span style=\"background-color:#ccccff\">#</span> <span style=\"background-color:#ccccff\">applications</span> <span style=\"background-color:#ccccff\">of</span> <span style=\"background-color:#ccccff\">rag</span> <br><br><span style=\"background-color:#996699\">1</span> <span style=\"background-color:#996699\">.</span> <span style=\"background-color:#996699\">*</span> <span style=\"background-color:#996699\">*</span> <span style=\"background-color:#996699\">question</span> <span style=\"background-color:#996699\">answering</span> <span style=\"background-color:#996699\">systems</span> <span style=\"background-color:#996699\">*</span> <span style=\"background-color:#996699\">*</span> <span style=\"background-color:#996699\">:</span> <span style=\"background-color:#996699\">rag</span> <span style=\"background-color:#996699\">can</span> <span style=\"background-color:#996699\">be</span> <span style=\"background-color:#996699\">used</span> <span style=\"background-color:#996699\">to</span> <span style=\"background-color:#996699\">improve</span> <span style=\"background-color:#996699\">the</span> <span style=\"background-color:#996699\">performance</span> <span style=\"background-color:#996699\">of</span> <span style=\"background-color:#996699\">question</span> <span style=\"background-color:#996699\">answering</span> <span style=\"background-color:#996699\">systems</span> <span style=\"background-color:#996699\">by</span> <span style=\"background-color:#996699\">providing</span> <span style=\"background-color:#996699\">precise</span> <span style=\"background-color:#996699\">and</span> <span style=\"background-color:#996699\">detailed</span> <span style=\"background-color:#996699\">answers</span> <span style=\"background-color:#996699\">.</span> <br><br><span style=\"background-color:#669999\">2</span> <span style=\"background-color:#669999\">.</span> <span style=\"background-color:#669999\">*</span> <span style=\"background-color:#669999\">*</span> <span style=\"background-color:#669999\">customer</span> <span style=\"background-color:#669999\">support</span> <span style=\"background-color:#669999\">*</span> <span style=\"background-color:#669999\">*</span> <span style=\"background-color:#669999\">:</span> <span style=\"background-color:#669999\">in</span> <span style=\"background-color:#669999\">customer</span> <span style=\"background-color:#669999\">support</span> <span style=\"background-color:#669999\">,</span> <span style=\"background-color:#669999\">rag</span> <span style=\"background-color:#669999\">can</span> <span style=\"background-color:#669999\">assist</span> <span style=\"background-color:#669999\">in</span> <span style=\"background-color:#669999\">generating</span> <span style=\"background-color:#669999\">accurate</span> <span style=\"background-color:#669999\">responses</span> <span style=\"background-color:#669999\">to</span> <span style=\"background-color:#669999\">customer</span> <span style=\"background-color:#669999\">que</span> <span style=\"background-color:#669999\">##ries</span> <span style=\"background-color:#669999\">by</span> <span style=\"background-color:#669999\">referencing</span> <span style=\"background-color:#669999\">a</span> <span style=\"background-color:#669999\">large</span> <span style=\"background-color:#669999\">database</span> <span style=\"background-color:#669999\">of</span> <span style=\"background-color:#669999\">knowledge</span> <span style=\"background-color:#669999\">.</span> <br><br><span style=\"background-color:#999966\">3</span> <span style=\"background-color:#999966\">.</span> <span style=\"background-color:#999966\">*</span> <span style=\"background-color:#999966\">*</span> <span style=\"background-color:#999966\">content</span> <span style=\"background-color:#999966\">creation</span> <span style=\"background-color:#999966\">*</span> <span style=\"background-color:#999966\">*</span> <span style=\"background-color:#999966\">:</span> <span style=\"background-color:#999966\">rag</span> <span style=\"background-color:#999966\">can</span> <span style=\"background-color:#999966\">aid</span> <span style=\"background-color:#999966\">content</span> <span style=\"background-color:#999966\">creators</span> <span style=\"background-color:#999966\">by</span> <span style=\"background-color:#999966\">providing</span> <span style=\"background-color:#999966\">relevant</span> <span style=\"background-color:#999966\">information</span> <span style=\"background-color:#999966\">and</span> <span style=\"background-color:#999966\">generating</span> <span style=\"background-color:#999966\">high</span> <span style=\"background-color:#999966\">-</span> <span style=\"background-color:#999966\">quality</span> <span style=\"background-color:#999966\">content</span> <span style=\"background-color:#999966\">based</span> <span style=\"background-color:#999966\">on</span> <span style=\"background-color:#999966\">the</span> <span style=\"background-color:#999966\">retrieved</span> <span style=\"background-color:#999966\">data</span> <span style=\"background-color:#999966\">.</span> <br><br><span style=\"background-color:#669966\">#</span> <span style=\"background-color:#669966\">#</span> <span style=\"background-color:#669966\">conclusion</span> <br><br><span style=\"background-color:#966696\">retrieval</span> <span style=\"background-color:#966696\">-</span> <span style=\"background-color:#966696\">augmented</span> <span style=\"background-color:#966696\">generation</span> <span style=\"background-color:#966696\">(</span> <span style=\"background-color:#966696\">rag</span> <span style=\"background-color:#966696\">)</span> <span style=\"background-color:#966696\">represents</span> <span style=\"background-color:#966696\">a</span> <span style=\"background-color:#966696\">significant</span> <span style=\"background-color:#966696\">advancement</span> <span style=\"background-color:#966696\">in</span> <span style=\"background-color:#966696\">nl</span> <span style=\"background-color:#966696\">##p</span> <span style=\"background-color:#966696\">by</span> <span style=\"background-color:#966696\">combining</span> <span style=\"background-color:#966696\">the</span> <span style=\"background-color:#966696\">best</span> <span style=\"background-color:#966696\">aspects</span> <span style=\"background-color:#966696\">of</span> <span style=\"background-color:#966696\">retrieval</span> <span style=\"background-color:#966696\">and</span> <span style=\"background-color:#966696\">generation</span> <span style=\"background-color:#966696\">methods</span> <span style=\"background-color:#966696\">.</span> <span style=\"background-color:#966696\">its</span> <span style=\"background-color:#966696\">ability</span> <span style=\"background-color:#966696\">to</span> <span style=\"background-color:#966696\">utilize</span> <span style=\"background-color:#966696\">vast</span> <span style=\"background-color:#966696\">data</span> <span style=\"background-color:#966696\">##set</span> <span style=\"background-color:#966696\">##s</span> <span style=\"background-color:#966696\">for</span> <span style=\"background-color:#966696\">generating</span> <br><br><span style=\"background-color:#696669\">context</span> <span style=\"background-color:#696669\">##ually</span> <span style=\"background-color:#696669\">accurate</span> <span style=\"background-color:#696669\">and</span> <span style=\"background-color:#696669\">high</span> <span style=\"background-color:#696669\">-</span> <span style=\"background-color:#696669\">quality</span> <span style=\"background-color:#696669\">text</span> <span style=\"background-color:#696669\">makes</span> <span style=\"background-color:#696669\">it</span> <span style=\"background-color:#696669\">a</span> <span style=\"background-color:#696669\">powerful</span> <span style=\"background-color:#696669\">tool</span> <span style=\"background-color:#696669\">for</span> <span style=\"background-color:#696669\">various</span> <span style=\"background-color:#696669\">applications</span> <span style=\"background-color:#696669\">.</span> <br><br>"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from langchain.text_splitter import MarkdownTextSplitter\n",
    "from transformers import BertTokenizer\n",
    "from IPython.display import HTML\n",
    "from langchain.text_splitter import TokenTextSplitter, RecursiveCharacterTextSplitter\n",
    "from collections import defaultdict\n",
    "\n",
    "# Initialize the tokenizer and text splitter\n",
    "tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')\n",
    "\n",
    "# Function to color and display text chunks\n",
    "def color_text_chunks(text, chunk_size, overlap, text_splitter):\n",
    "\n",
    "    docs = text_splitter.create_documents([text])\n",
    "    chunks = [doc.page_content for doc in docs]  # Access the text attribute\n",
    "\n",
    "    # Define colors\n",
    "    colors = ['#ff9999', '#99ff99', '#9999ff', '#ffff99', '#99ffff', '#ff99ff', '#cccccc',\n",
    "              '#ff6666', '#66ff66', '#6666ff', '#ffff66', '#66ffff', '#ff66ff', '#ccccff',\n",
    "              '#996699', '#669999', '#999966', '#669966', '#966696', '#696669']\n",
    "\n",
    "    # Define color positions for each chunk\n",
    "    color_positions = []\n",
    "    for i in range(len(chunks)):\n",
    "        chunk_tokens = tokenizer.tokenize(chunks[i])\n",
    "        chunk_length = len(chunk_tokens)\n",
    "        if chunk_length > overlap:\n",
    "            unique_length = chunk_length - overlap\n",
    "            chunk_colors = [colors[i % len(colors)]] * unique_length + \\\n",
    "                           [blend_colors([colors[i % len(colors)], colors[(i+1) % len(colors)]])] * overlap\n",
    "        else:\n",
    "            chunk_colors = [blend_colors([colors[i % len(colors)], colors[(i+1) % len(colors)]])] * chunk_length\n",
    "        color_positions.append(chunk_colors)\n",
    "\n",
    "    # Adjust colors for overlapping tokens in the next chunk\n",
    "    for i in range(1, len(color_positions)):\n",
    "        overlap_color = blend_colors([colors[(i-1) % len(colors)], colors[i % len(colors)]])\n",
    "        color_positions[i] = [overlap_color] * overlap + color_positions[i][overlap:]\n",
    "\n",
    "    # Generate colored HTML\n",
    "    colored_text = \"\"\n",
    "    for i, chunk in enumerate(chunks):\n",
    "        tokens = tokenizer.tokenize(chunk)\n",
    "        for j, token in enumerate(tokens):\n",
    "            color = color_positions[i][j]\n",
    "            token_html = f'<span style=\"background-color:{color}\">{token}</span>'\n",
    "            colored_text += token_html + ' '\n",
    "        colored_text += '<br><br>'\n",
    "\n",
    "    return HTML(colored_text)\n",
    "\n",
    "def blend_colors(color_list):\n",
    "    # Simple function to blend multiple colors\n",
    "    r, g, b = 0, 0, 0\n",
    "    for color in color_list:\n",
    "        c = int(color[1:], 16)\n",
    "        r += c >> 16\n",
    "        g += (c >> 8) & 0xff\n",
    "        b += c & 0xff\n",
    "    n = len(color_list)\n",
    "    r = min(r // n, 255)\n",
    "    g = min(g // n, 255)\n",
    "    b = min(b // n, 255)\n",
    "    return f'#{r:02x}{g:02x}{b:02x}'\n",
    "\n",
    "\n",
    "text = '''\n",
    "# Retrieval-Augmented Generation (RAG)\n",
    "\n",
    "## Introduction\n",
    "\n",
    "Retrieval-Augmented Generation (RAG) is a technique in natural language processing (NLP) that combines the strengths of retrieval-based methods and generation-based methods. It is designed to enhance the quality and accuracy of generated text by leveraging a large corpus of documents during the text generation process.\n",
    "\n",
    "## How RAG Works\n",
    "\n",
    "### Retrieval Component\n",
    "\n",
    "The retrieval component is responsible for searching a large dataset or knowledge base to find relevant documents or passages that are related to the input query. This component typically uses advanced search algorithms and embeddings to identify the most pertinent information.\n",
    "\n",
    "### Generation Component\n",
    "\n",
    "The generation component takes the retrieved documents as additional context and generates a coherent and contextually accurate response. This is usually achieved using transformer-based models like BERT or GPT, which can process the input query along with the retrieved information to produce high-quality text.\n",
    "\n",
    "## Advantages of RAG\n",
    "\n",
    "1. **Enhanced Accuracy**: By using relevant external documents, RAG can generate more accurate and informed responses.\n",
    "2. **Contextual Relevance**: The retrieval component ensures that the generated text is contextually relevant to the query.\n",
    "3. **Scalability**: RAG can be scaled to work with vast datasets, making it suitable for applications requiring extensive knowledge bases.\n",
    "\n",
    "## Applications of RAG\n",
    "\n",
    "1. **Question Answering Systems**: RAG can be used to improve the performance of question answering systems by providing precise and detailed answers.\n",
    "2. **Customer Support**: In customer support, RAG can assist in generating accurate responses to customer queries by referencing a large database of knowledge.\n",
    "3. **Content Creation**: RAG can aid content creators by providing relevant information and generating high-quality content based on the retrieved data.\n",
    "\n",
    "## Conclusion\n",
    "\n",
    "Retrieval-Augmented Generation (RAG) represents a significant advancement in NLP by combining the best aspects of retrieval and generation methods. Its ability to utilize vast datasets for generating contextually accurate and high-quality text makes it a powerful tool for various applications.\n",
    "'''\n",
    "\n",
    "chunk_size = 200\n",
    "overlap = 0\n",
    "\n",
    "text_splitter = MarkdownTextSplitter(\n",
    "    chunk_size=chunk_size,  \n",
    "    chunk_overlap=overlap  \n",
    ")\n",
    "\n",
    "color_text_chunks(text, chunk_size, overlap, text_splitter)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d2be8783-29b8-485c-b88f-96d729eb0c77",
   "metadata": {},
   "source": [
    "## LaTex Chunker"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "92a26f9c-dd07-4d8b-a842-14447c61ee36",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<span style=\"background-color:#ff9999\">\\</span> <span style=\"background-color:#ff9999\">section</span> <span style=\"background-color:#ff9999\">{</span> <span style=\"background-color:#ff9999\">retrieval</span> <span style=\"background-color:#ff9999\">-</span> <span style=\"background-color:#ff9999\">augmented</span> <span style=\"background-color:#ff9999\">generation</span> <span style=\"background-color:#ff9999\">(</span> <span style=\"background-color:#ff9999\">rag</span> <span style=\"background-color:#ff9999\">)</span> <span style=\"background-color:#ff9999\">}</span> <span style=\"background-color:#ff9999\">\\</span> <span style=\"background-color:#ff9999\">sub</span> <span style=\"background-color:#ff9999\">##section</span> <span style=\"background-color:#ff9999\">{</span> <span style=\"background-color:#ff9999\">introduction</span> <span style=\"background-color:#ff9999\">}</span> <span style=\"background-color:#ff9999\">retrieval</span> <span style=\"background-color:#ff9999\">-</span> <span style=\"background-color:#ff9999\">augmented</span> <span style=\"background-color:#ff9999\">generation</span> <span style=\"background-color:#ff9999\">(</span> <span style=\"background-color:#ff9999\">rag</span> <span style=\"background-color:#ff9999\">)</span> <span style=\"background-color:#ff9999\">is</span> <span style=\"background-color:#ff9999\">a</span> <span style=\"background-color:#ff9999\">technique</span> <span style=\"background-color:#ff9999\">in</span> <span style=\"background-color:#ff9999\">natural</span> <span style=\"background-color:#ff9999\">language</span> <span style=\"background-color:#ff9999\">processing</span> <span style=\"background-color:#ff9999\">(</span> <span style=\"background-color:#ff9999\">nl</span> <span style=\"background-color:#ff9999\">##p</span> <span style=\"background-color:#ff9999\">)</span> <span style=\"background-color:#ff9999\">that</span> <span style=\"background-color:#ff9999\">combines</span> <span style=\"background-color:#ff9999\">the</span> <span style=\"background-color:#ff9999\">strengths</span> <span style=\"background-color:#ff9999\">of</span> <br><br><span style=\"background-color:#99ff99\">retrieval</span> <span style=\"background-color:#99ff99\">-</span> <span style=\"background-color:#99ff99\">based</span> <span style=\"background-color:#99ff99\">methods</span> <span style=\"background-color:#99ff99\">and</span> <span style=\"background-color:#99ff99\">generation</span> <span style=\"background-color:#99ff99\">-</span> <span style=\"background-color:#99ff99\">based</span> <span style=\"background-color:#99ff99\">methods</span> <span style=\"background-color:#99ff99\">.</span> <span style=\"background-color:#99ff99\">it</span> <span style=\"background-color:#99ff99\">is</span> <span style=\"background-color:#99ff99\">designed</span> <span style=\"background-color:#99ff99\">to</span> <span style=\"background-color:#99ff99\">enhance</span> <span style=\"background-color:#99ff99\">the</span> <span style=\"background-color:#99ff99\">quality</span> <span style=\"background-color:#99ff99\">and</span> <span style=\"background-color:#99ff99\">accuracy</span> <span style=\"background-color:#99ff99\">of</span> <span style=\"background-color:#99ff99\">generated</span> <span style=\"background-color:#99ff99\">text</span> <span style=\"background-color:#99ff99\">by</span> <span style=\"background-color:#99ff99\">lever</span> <span style=\"background-color:#99ff99\">##aging</span> <span style=\"background-color:#99ff99\">a</span> <span style=\"background-color:#99ff99\">large</span> <span style=\"background-color:#99ff99\">corpus</span> <span style=\"background-color:#99ff99\">of</span> <span style=\"background-color:#99ff99\">documents</span> <span style=\"background-color:#99ff99\">during</span> <span style=\"background-color:#99ff99\">the</span> <span style=\"background-color:#99ff99\">text</span> <span style=\"background-color:#99ff99\">generation</span> <br><br><span style=\"background-color:#9999ff\">process</span> <span style=\"background-color:#9999ff\">.</span> <span style=\"background-color:#9999ff\">\\</span> <span style=\"background-color:#9999ff\">sub</span> <span style=\"background-color:#9999ff\">##section</span> <span style=\"background-color:#9999ff\">{</span> <span style=\"background-color:#9999ff\">how</span> <span style=\"background-color:#9999ff\">rag</span> <span style=\"background-color:#9999ff\">works</span> <span style=\"background-color:#9999ff\">}</span> <span style=\"background-color:#9999ff\">\\</span> <span style=\"background-color:#9999ff\">sub</span> <span style=\"background-color:#9999ff\">##su</span> <span style=\"background-color:#9999ff\">##bs</span> <span style=\"background-color:#9999ff\">##ection</span> <span style=\"background-color:#9999ff\">{</span> <span style=\"background-color:#9999ff\">retrieval</span> <span style=\"background-color:#9999ff\">component</span> <span style=\"background-color:#9999ff\">}</span> <span style=\"background-color:#9999ff\">the</span> <span style=\"background-color:#9999ff\">retrieval</span> <span style=\"background-color:#9999ff\">component</span> <span style=\"background-color:#9999ff\">is</span> <span style=\"background-color:#9999ff\">responsible</span> <span style=\"background-color:#9999ff\">for</span> <span style=\"background-color:#9999ff\">searching</span> <span style=\"background-color:#9999ff\">a</span> <span style=\"background-color:#9999ff\">large</span> <span style=\"background-color:#9999ff\">data</span> <span style=\"background-color:#9999ff\">##set</span> <span style=\"background-color:#9999ff\">or</span> <span style=\"background-color:#9999ff\">knowledge</span> <span style=\"background-color:#9999ff\">base</span> <span style=\"background-color:#9999ff\">to</span> <span style=\"background-color:#9999ff\">find</span> <span style=\"background-color:#9999ff\">relevant</span> <span style=\"background-color:#9999ff\">documents</span> <span style=\"background-color:#9999ff\">or</span> <br><br><span style=\"background-color:#ffff99\">passages</span> <span style=\"background-color:#ffff99\">that</span> <span style=\"background-color:#ffff99\">are</span> <span style=\"background-color:#ffff99\">related</span> <span style=\"background-color:#ffff99\">to</span> <span style=\"background-color:#ffff99\">the</span> <span style=\"background-color:#ffff99\">input</span> <span style=\"background-color:#ffff99\">query</span> <span style=\"background-color:#ffff99\">.</span> <span style=\"background-color:#ffff99\">this</span> <span style=\"background-color:#ffff99\">component</span> <span style=\"background-color:#ffff99\">typically</span> <span style=\"background-color:#ffff99\">uses</span> <span style=\"background-color:#ffff99\">advanced</span> <span style=\"background-color:#ffff99\">search</span> <span style=\"background-color:#ffff99\">algorithms</span> <span style=\"background-color:#ffff99\">and</span> <span style=\"background-color:#ffff99\">em</span> <span style=\"background-color:#ffff99\">##bed</span> <span style=\"background-color:#ffff99\">##ding</span> <span style=\"background-color:#ffff99\">##s</span> <span style=\"background-color:#ffff99\">to</span> <span style=\"background-color:#ffff99\">identify</span> <span style=\"background-color:#ffff99\">the</span> <span style=\"background-color:#ffff99\">most</span> <span style=\"background-color:#ffff99\">per</span> <span style=\"background-color:#ffff99\">##tine</span> <span style=\"background-color:#ffff99\">##nt</span> <span style=\"background-color:#ffff99\">information</span> <span style=\"background-color:#ffff99\">.</span> <span style=\"background-color:#ffff99\">\\</span> <span style=\"background-color:#ffff99\">sub</span> <span style=\"background-color:#ffff99\">##su</span> <span style=\"background-color:#ffff99\">##bs</span> <span style=\"background-color:#ffff99\">##ection</span> <span style=\"background-color:#ffff99\">{</span> <span style=\"background-color:#ffff99\">generation</span> <br><br><span style=\"background-color:#99ffff\">component</span> <span style=\"background-color:#99ffff\">}</span> <span style=\"background-color:#99ffff\">the</span> <span style=\"background-color:#99ffff\">generation</span> <span style=\"background-color:#99ffff\">component</span> <span style=\"background-color:#99ffff\">takes</span> <span style=\"background-color:#99ffff\">the</span> <span style=\"background-color:#99ffff\">retrieved</span> <span style=\"background-color:#99ffff\">documents</span> <span style=\"background-color:#99ffff\">as</span> <span style=\"background-color:#99ffff\">additional</span> <span style=\"background-color:#99ffff\">context</span> <span style=\"background-color:#99ffff\">and</span> <span style=\"background-color:#99ffff\">generates</span> <span style=\"background-color:#99ffff\">a</span> <span style=\"background-color:#99ffff\">coherent</span> <span style=\"background-color:#99ffff\">and</span> <span style=\"background-color:#99ffff\">context</span> <span style=\"background-color:#99ffff\">##ually</span> <span style=\"background-color:#99ffff\">accurate</span> <span style=\"background-color:#99ffff\">response</span> <span style=\"background-color:#99ffff\">.</span> <span style=\"background-color:#99ffff\">this</span> <span style=\"background-color:#99ffff\">is</span> <span style=\"background-color:#99ffff\">usually</span> <span style=\"background-color:#99ffff\">achieved</span> <span style=\"background-color:#99ffff\">using</span> <span style=\"background-color:#99ffff\">transform</span> <span style=\"background-color:#99ffff\">##er</span> <span style=\"background-color:#99ffff\">-</span> <span style=\"background-color:#99ffff\">based</span> <br><br><span style=\"background-color:#ff99ff\">models</span> <span style=\"background-color:#ff99ff\">like</span> <span style=\"background-color:#ff99ff\">bert</span> <span style=\"background-color:#ff99ff\">or</span> <span style=\"background-color:#ff99ff\">gp</span> <span style=\"background-color:#ff99ff\">##t</span> <span style=\"background-color:#ff99ff\">,</span> <span style=\"background-color:#ff99ff\">which</span> <span style=\"background-color:#ff99ff\">can</span> <span style=\"background-color:#ff99ff\">process</span> <span style=\"background-color:#ff99ff\">the</span> <span style=\"background-color:#ff99ff\">input</span> <span style=\"background-color:#ff99ff\">query</span> <span style=\"background-color:#ff99ff\">along</span> <span style=\"background-color:#ff99ff\">with</span> <span style=\"background-color:#ff99ff\">the</span> <span style=\"background-color:#ff99ff\">retrieved</span> <span style=\"background-color:#ff99ff\">information</span> <span style=\"background-color:#ff99ff\">to</span> <span style=\"background-color:#ff99ff\">produce</span> <span style=\"background-color:#ff99ff\">high</span> <span style=\"background-color:#ff99ff\">-</span> <span style=\"background-color:#ff99ff\">quality</span> <span style=\"background-color:#ff99ff\">text</span> <span style=\"background-color:#ff99ff\">.</span> <span style=\"background-color:#ff99ff\">\\</span> <span style=\"background-color:#ff99ff\">sub</span> <span style=\"background-color:#ff99ff\">##section</span> <span style=\"background-color:#ff99ff\">{</span> <span style=\"background-color:#ff99ff\">advantages</span> <span style=\"background-color:#ff99ff\">of</span> <span style=\"background-color:#ff99ff\">rag</span> <span style=\"background-color:#ff99ff\">}</span> <span style=\"background-color:#ff99ff\">\\</span> <span style=\"background-color:#ff99ff\">begin</span> <span style=\"background-color:#ff99ff\">{</span> <span style=\"background-color:#ff99ff\">item</span> <span style=\"background-color:#ff99ff\">##ize</span> <span style=\"background-color:#ff99ff\">}</span> <span style=\"background-color:#ff99ff\">\\</span> <span style=\"background-color:#ff99ff\">item</span> <br><br><span style=\"background-color:#cccccc\">\\</span> <span style=\"background-color:#cccccc\">text</span> <span style=\"background-color:#cccccc\">##bf</span> <span style=\"background-color:#cccccc\">{</span> <span style=\"background-color:#cccccc\">enhanced</span> <span style=\"background-color:#cccccc\">accuracy</span> <span style=\"background-color:#cccccc\">}</span> <span style=\"background-color:#cccccc\">:</span> <span style=\"background-color:#cccccc\">by</span> <span style=\"background-color:#cccccc\">using</span> <span style=\"background-color:#cccccc\">relevant</span> <span style=\"background-color:#cccccc\">external</span> <span style=\"background-color:#cccccc\">documents</span> <span style=\"background-color:#cccccc\">,</span> <span style=\"background-color:#cccccc\">rag</span> <span style=\"background-color:#cccccc\">can</span> <span style=\"background-color:#cccccc\">generate</span> <span style=\"background-color:#cccccc\">more</span> <span style=\"background-color:#cccccc\">accurate</span> <span style=\"background-color:#cccccc\">and</span> <span style=\"background-color:#cccccc\">informed</span> <span style=\"background-color:#cccccc\">responses</span> <span style=\"background-color:#cccccc\">.</span> <span style=\"background-color:#cccccc\">\\</span> <span style=\"background-color:#cccccc\">item</span> <span style=\"background-color:#cccccc\">\\</span> <span style=\"background-color:#cccccc\">text</span> <span style=\"background-color:#cccccc\">##bf</span> <span style=\"background-color:#cccccc\">{</span> <span style=\"background-color:#cccccc\">context</span> <span style=\"background-color:#cccccc\">##ual</span> <span style=\"background-color:#cccccc\">relevance</span> <span style=\"background-color:#cccccc\">}</span> <span style=\"background-color:#cccccc\">:</span> <span style=\"background-color:#cccccc\">the</span> <span style=\"background-color:#cccccc\">retrieval</span> <span style=\"background-color:#cccccc\">component</span> <span style=\"background-color:#cccccc\">ensures</span> <span style=\"background-color:#cccccc\">that</span> <br><br><span style=\"background-color:#ff6666\">the</span> <span style=\"background-color:#ff6666\">generated</span> <span style=\"background-color:#ff6666\">text</span> <span style=\"background-color:#ff6666\">is</span> <span style=\"background-color:#ff6666\">context</span> <span style=\"background-color:#ff6666\">##ually</span> <span style=\"background-color:#ff6666\">relevant</span> <span style=\"background-color:#ff6666\">to</span> <span style=\"background-color:#ff6666\">the</span> <span style=\"background-color:#ff6666\">query</span> <span style=\"background-color:#ff6666\">.</span> <span style=\"background-color:#ff6666\">\\</span> <span style=\"background-color:#ff6666\">item</span> <span style=\"background-color:#ff6666\">\\</span> <span style=\"background-color:#ff6666\">text</span> <span style=\"background-color:#ff6666\">##bf</span> <span style=\"background-color:#ff6666\">{</span> <span style=\"background-color:#ff6666\">scala</span> <span style=\"background-color:#ff6666\">##bility</span> <span style=\"background-color:#ff6666\">}</span> <span style=\"background-color:#ff6666\">:</span> <span style=\"background-color:#ff6666\">rag</span> <span style=\"background-color:#ff6666\">can</span> <span style=\"background-color:#ff6666\">be</span> <span style=\"background-color:#ff6666\">scaled</span> <span style=\"background-color:#ff6666\">to</span> <span style=\"background-color:#ff6666\">work</span> <span style=\"background-color:#ff6666\">with</span> <span style=\"background-color:#ff6666\">vast</span> <span style=\"background-color:#ff6666\">data</span> <span style=\"background-color:#ff6666\">##set</span> <span style=\"background-color:#ff6666\">##s</span> <span style=\"background-color:#ff6666\">,</span> <span style=\"background-color:#ff6666\">making</span> <span style=\"background-color:#ff6666\">it</span> <span style=\"background-color:#ff6666\">suitable</span> <span style=\"background-color:#ff6666\">for</span> <span style=\"background-color:#ff6666\">applications</span> <span style=\"background-color:#ff6666\">requiring</span> <span style=\"background-color:#ff6666\">extensive</span> <br><br><span style=\"background-color:#66ff66\">knowledge</span> <span style=\"background-color:#66ff66\">bases</span> <span style=\"background-color:#66ff66\">.</span> <span style=\"background-color:#66ff66\">\\</span> <span style=\"background-color:#66ff66\">end</span> <span style=\"background-color:#66ff66\">{</span> <span style=\"background-color:#66ff66\">item</span> <span style=\"background-color:#66ff66\">##ize</span> <span style=\"background-color:#66ff66\">}</span> <span style=\"background-color:#66ff66\">\\</span> <span style=\"background-color:#66ff66\">sub</span> <span style=\"background-color:#66ff66\">##section</span> <span style=\"background-color:#66ff66\">{</span> <span style=\"background-color:#66ff66\">applications</span> <span style=\"background-color:#66ff66\">of</span> <span style=\"background-color:#66ff66\">rag</span> <span style=\"background-color:#66ff66\">}</span> <span style=\"background-color:#66ff66\">\\</span> <span style=\"background-color:#66ff66\">begin</span> <span style=\"background-color:#66ff66\">{</span> <span style=\"background-color:#66ff66\">item</span> <span style=\"background-color:#66ff66\">##ize</span> <span style=\"background-color:#66ff66\">}</span> <span style=\"background-color:#66ff66\">\\</span> <span style=\"background-color:#66ff66\">item</span> <span style=\"background-color:#66ff66\">\\</span> <span style=\"background-color:#66ff66\">text</span> <span style=\"background-color:#66ff66\">##bf</span> <span style=\"background-color:#66ff66\">{</span> <span style=\"background-color:#66ff66\">question</span> <span style=\"background-color:#66ff66\">answering</span> <span style=\"background-color:#66ff66\">systems</span> <span style=\"background-color:#66ff66\">}</span> <span style=\"background-color:#66ff66\">:</span> <span style=\"background-color:#66ff66\">rag</span> <span style=\"background-color:#66ff66\">can</span> <span style=\"background-color:#66ff66\">be</span> <span style=\"background-color:#66ff66\">used</span> <span style=\"background-color:#66ff66\">to</span> <span style=\"background-color:#66ff66\">improve</span> <span style=\"background-color:#66ff66\">the</span> <span style=\"background-color:#66ff66\">performance</span> <span style=\"background-color:#66ff66\">of</span> <span style=\"background-color:#66ff66\">question</span> <span style=\"background-color:#66ff66\">answering</span> <br><br><span style=\"background-color:#6666ff\">systems</span> <span style=\"background-color:#6666ff\">by</span> <span style=\"background-color:#6666ff\">providing</span> <span style=\"background-color:#6666ff\">precise</span> <span style=\"background-color:#6666ff\">and</span> <span style=\"background-color:#6666ff\">detailed</span> <span style=\"background-color:#6666ff\">answers</span> <span style=\"background-color:#6666ff\">.</span> <span style=\"background-color:#6666ff\">\\</span> <span style=\"background-color:#6666ff\">item</span> <span style=\"background-color:#6666ff\">\\</span> <span style=\"background-color:#6666ff\">text</span> <span style=\"background-color:#6666ff\">##bf</span> <span style=\"background-color:#6666ff\">{</span> <span style=\"background-color:#6666ff\">customer</span> <span style=\"background-color:#6666ff\">support</span> <span style=\"background-color:#6666ff\">}</span> <span style=\"background-color:#6666ff\">:</span> <span style=\"background-color:#6666ff\">in</span> <span style=\"background-color:#6666ff\">customer</span> <span style=\"background-color:#6666ff\">support</span> <span style=\"background-color:#6666ff\">,</span> <span style=\"background-color:#6666ff\">rag</span> <span style=\"background-color:#6666ff\">can</span> <span style=\"background-color:#6666ff\">assist</span> <span style=\"background-color:#6666ff\">in</span> <span style=\"background-color:#6666ff\">generating</span> <span style=\"background-color:#6666ff\">accurate</span> <span style=\"background-color:#6666ff\">responses</span> <span style=\"background-color:#6666ff\">to</span> <span style=\"background-color:#6666ff\">customer</span> <span style=\"background-color:#6666ff\">que</span> <span style=\"background-color:#6666ff\">##ries</span> <span style=\"background-color:#6666ff\">by</span> <span style=\"background-color:#6666ff\">referencing</span> <span style=\"background-color:#6666ff\">a</span> <span style=\"background-color:#6666ff\">large</span> <br><br><span style=\"background-color:#ffff66\">database</span> <span style=\"background-color:#ffff66\">of</span> <span style=\"background-color:#ffff66\">knowledge</span> <span style=\"background-color:#ffff66\">.</span> <span style=\"background-color:#ffff66\">\\</span> <span style=\"background-color:#ffff66\">item</span> <span style=\"background-color:#ffff66\">\\</span> <span style=\"background-color:#ffff66\">text</span> <span style=\"background-color:#ffff66\">##bf</span> <span style=\"background-color:#ffff66\">{</span> <span style=\"background-color:#ffff66\">content</span> <span style=\"background-color:#ffff66\">creation</span> <span style=\"background-color:#ffff66\">}</span> <span style=\"background-color:#ffff66\">:</span> <span style=\"background-color:#ffff66\">rag</span> <span style=\"background-color:#ffff66\">can</span> <span style=\"background-color:#ffff66\">aid</span> <span style=\"background-color:#ffff66\">content</span> <span style=\"background-color:#ffff66\">creators</span> <span style=\"background-color:#ffff66\">by</span> <span style=\"background-color:#ffff66\">providing</span> <span style=\"background-color:#ffff66\">relevant</span> <span style=\"background-color:#ffff66\">information</span> <span style=\"background-color:#ffff66\">and</span> <span style=\"background-color:#ffff66\">generating</span> <span style=\"background-color:#ffff66\">high</span> <span style=\"background-color:#ffff66\">-</span> <span style=\"background-color:#ffff66\">quality</span> <span style=\"background-color:#ffff66\">content</span> <span style=\"background-color:#ffff66\">based</span> <span style=\"background-color:#ffff66\">on</span> <span style=\"background-color:#ffff66\">the</span> <span style=\"background-color:#ffff66\">retrieved</span> <br><br><span style=\"background-color:#66ffff\">data</span> <span style=\"background-color:#66ffff\">.</span> <span style=\"background-color:#66ffff\">\\</span> <span style=\"background-color:#66ffff\">end</span> <span style=\"background-color:#66ffff\">{</span> <span style=\"background-color:#66ffff\">item</span> <span style=\"background-color:#66ffff\">##ize</span> <span style=\"background-color:#66ffff\">}</span> <span style=\"background-color:#66ffff\">\\</span> <span style=\"background-color:#66ffff\">sub</span> <span style=\"background-color:#66ffff\">##section</span> <span style=\"background-color:#66ffff\">{</span> <span style=\"background-color:#66ffff\">conclusion</span> <span style=\"background-color:#66ffff\">}</span> <span style=\"background-color:#66ffff\">retrieval</span> <span style=\"background-color:#66ffff\">-</span> <span style=\"background-color:#66ffff\">augmented</span> <span style=\"background-color:#66ffff\">generation</span> <span style=\"background-color:#66ffff\">(</span> <span style=\"background-color:#66ffff\">rag</span> <span style=\"background-color:#66ffff\">)</span> <span style=\"background-color:#66ffff\">represents</span> <span style=\"background-color:#66ffff\">a</span> <span style=\"background-color:#66ffff\">significant</span> <span style=\"background-color:#66ffff\">advancement</span> <span style=\"background-color:#66ffff\">in</span> <span style=\"background-color:#66ffff\">nl</span> <span style=\"background-color:#66ffff\">##p</span> <span style=\"background-color:#66ffff\">by</span> <span style=\"background-color:#66ffff\">combining</span> <span style=\"background-color:#66ffff\">the</span> <span style=\"background-color:#66ffff\">best</span> <span style=\"background-color:#66ffff\">aspects</span> <span style=\"background-color:#66ffff\">of</span> <span style=\"background-color:#66ffff\">retrieval</span> <span style=\"background-color:#66ffff\">and</span> <span style=\"background-color:#66ffff\">generation</span> <span style=\"background-color:#66ffff\">methods</span> <span style=\"background-color:#66ffff\">.</span> <span style=\"background-color:#66ffff\">its</span> <br><br><span style=\"background-color:#ff66ff\">ability</span> <span style=\"background-color:#ff66ff\">to</span> <span style=\"background-color:#ff66ff\">utilize</span> <span style=\"background-color:#ff66ff\">vast</span> <span style=\"background-color:#ff66ff\">data</span> <span style=\"background-color:#ff66ff\">##set</span> <span style=\"background-color:#ff66ff\">##s</span> <span style=\"background-color:#ff66ff\">for</span> <span style=\"background-color:#ff66ff\">generating</span> <span style=\"background-color:#ff66ff\">context</span> <span style=\"background-color:#ff66ff\">##ually</span> <span style=\"background-color:#ff66ff\">accurate</span> <span style=\"background-color:#ff66ff\">and</span> <span style=\"background-color:#ff66ff\">high</span> <span style=\"background-color:#ff66ff\">-</span> <span style=\"background-color:#ff66ff\">quality</span> <span style=\"background-color:#ff66ff\">text</span> <span style=\"background-color:#ff66ff\">makes</span> <span style=\"background-color:#ff66ff\">it</span> <span style=\"background-color:#ff66ff\">a</span> <span style=\"background-color:#ff66ff\">powerful</span> <span style=\"background-color:#ff66ff\">tool</span> <span style=\"background-color:#ff66ff\">for</span> <span style=\"background-color:#ff66ff\">various</span> <span style=\"background-color:#ff66ff\">applications</span> <span style=\"background-color:#ff66ff\">.</span> <br><br>"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from langchain.text_splitter import LatexTextSplitter\n",
    "text = '''\n",
    "\\\\section{Retrieval-Augmented Generation (RAG)}\n",
    "\n",
    "\\\\subsection{Introduction}\n",
    "\n",
    "Retrieval-Augmented Generation (RAG) is a technique in natural language processing (NLP) that combines the strengths of retrieval-based methods and generation-based methods. It is designed to enhance the quality and accuracy of generated text by leveraging a large corpus of documents during the text generation process.\n",
    "\n",
    "\\\\subsection{How RAG Works}\n",
    "\n",
    "\\\\subsubsection{Retrieval Component}\n",
    "\n",
    "The retrieval component is responsible for searching a large dataset or knowledge base to find relevant documents or passages that are related to the input query. This component typically uses advanced search algorithms and embeddings to identify the most pertinent information.\n",
    "\n",
    "\\\\subsubsection{Generation Component}\n",
    "\n",
    "The generation component takes the retrieved documents as additional context and generates a coherent and contextually accurate response. This is usually achieved using transformer-based models like BERT or GPT, which can process the input query along with the retrieved information to produce high-quality text.\n",
    "\n",
    "\\\\subsection{Advantages of RAG}\n",
    "\n",
    "\\\\begin{itemize}\n",
    "    \\\\item \\\\textbf{Enhanced Accuracy}: By using relevant external documents, RAG can generate more accurate and informed responses.\n",
    "    \\\\item \\\\textbf{Contextual Relevance}: The retrieval component ensures that the generated text is contextually relevant to the query.\n",
    "    \\\\item \\\\textbf{Scalability}: RAG can be scaled to work with vast datasets, making it suitable for applications requiring extensive knowledge bases.\n",
    "\\\\end{itemize}\n",
    "\n",
    "\\\\subsection{Applications of RAG}\n",
    "\n",
    "\\\\begin{itemize}\n",
    "    \\\\item \\\\textbf{Question Answering Systems}: RAG can be used to improve the performance of question answering systems by providing precise and detailed answers.\n",
    "    \\\\item \\\\textbf{Customer Support}: In customer support, RAG can assist in generating accurate responses to customer queries by referencing a large database of knowledge.\n",
    "    \\\\item \\\\textbf{Content Creation}: RAG can aid content creators by providing relevant information and generating high-quality content based on the retrieved data.\n",
    "\\\\end{itemize}\n",
    "\n",
    "\\\\subsection{Conclusion}\n",
    "\n",
    "Retrieval-Augmented Generation (RAG) represents a significant advancement in NLP by combining the best aspects of retrieval and generation methods. Its ability to utilize vast datasets for generating contextually accurate and high-quality text makes it a powerful tool for various applications.\n",
    "'''\n",
    "\n",
    "chunk_size = 200\n",
    "overlap = 0\n",
    "\n",
    "text_splitter = LatexTextSplitter(\n",
    "    chunk_size=chunk_size,  \n",
    "    chunk_overlap=overlap  \n",
    ")\n",
    "\n",
    "color_text_chunks(text, chunk_size, overlap, text_splitter)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d703b6b1-2480-45e4-9ad8-b3853ee93038",
   "metadata": {},
   "source": [
    "## HTML splitter"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "c30a195e-a705-47bd-a8af-643a2ced1e38",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<span style=\"background-color:#ff9999\">retrieval</span> <span style=\"background-color:#ff9999\">-</span> <span style=\"background-color:#ff9999\">augmented</span> <span style=\"background-color:#ff9999\">generation</span> <span style=\"background-color:#ff9999\">(</span> <span style=\"background-color:#ff9999\">rag</span> <span style=\"background-color:#ff9999\">)</span> <span style=\"background-color:#ff9999\">is</span> <span style=\"background-color:#ff9999\">a</span> <span style=\"background-color:#ff9999\">technique</span> <span style=\"background-color:#ff9999\">in</span> <span style=\"background-color:#ff9999\">natural</span> <span style=\"background-color:#ff9999\">language</span> <span style=\"background-color:#ff9999\">processing</span> <span style=\"background-color:#ff9999\">(</span> <span style=\"background-color:#ff9999\">nl</span> <span style=\"background-color:#ff9999\">##p</span> <span style=\"background-color:#ff9999\">)</span> <span style=\"background-color:#ff9999\">that</span> <span style=\"background-color:#ff9999\">combines</span> <span style=\"background-color:#ff9999\">the</span> <span style=\"background-color:#ff9999\">strengths</span> <span style=\"background-color:#ff9999\">of</span> <span style=\"background-color:#ff9999\">retrieval</span> <span style=\"background-color:#ff9999\">-</span> <span style=\"background-color:#ff9999\">based</span> <span style=\"background-color:#ff9999\">methods</span> <span style=\"background-color:#ff9999\">and</span> <span style=\"background-color:#ff9999\">generation</span> <span style=\"background-color:#ff9999\">-</span> <span style=\"background-color:#ff9999\">based</span> <span style=\"background-color:#ff9999\">methods</span> <span style=\"background-color:#ff9999\">.</span> <span style=\"background-color:#ff9999\">it</span> <span style=\"background-color:#ff9999\">is</span> <span style=\"background-color:#ff9999\">designed</span> <span style=\"background-color:#ff9999\">to</span> <span style=\"background-color:#ff9999\">enhance</span> <span style=\"background-color:#ff9999\">the</span> <span style=\"background-color:#ff9999\">quality</span> <span style=\"background-color:#ff9999\">and</span> <span style=\"background-color:#ff9999\">accuracy</span> <span style=\"background-color:#ff9999\">of</span> <span style=\"background-color:#ff9999\">generated</span> <span style=\"background-color:#ff9999\">text</span> <span style=\"background-color:#ff9999\">by</span> <span style=\"background-color:#ff9999\">lever</span> <span style=\"background-color:#ff9999\">##aging</span> <span style=\"background-color:#ff9999\">a</span> <span style=\"background-color:#ff9999\">large</span> <span style=\"background-color:#ff9999\">corpus</span> <span style=\"background-color:#ff9999\">of</span> <span style=\"background-color:#ff9999\">documents</span> <span style=\"background-color:#ff9999\">during</span> <span style=\"background-color:#ff9999\">the</span> <span style=\"background-color:#ff9999\">text</span> <span style=\"background-color:#ff9999\">generation</span> <span style=\"background-color:#ff9999\">process</span> <span style=\"background-color:#ff9999\">.</span> <br><br><span style=\"background-color:#99ff99\">the</span> <span style=\"background-color:#99ff99\">retrieval</span> <span style=\"background-color:#99ff99\">component</span> <span style=\"background-color:#99ff99\">is</span> <span style=\"background-color:#99ff99\">responsible</span> <span style=\"background-color:#99ff99\">for</span> <span style=\"background-color:#99ff99\">searching</span> <span style=\"background-color:#99ff99\">a</span> <span style=\"background-color:#99ff99\">large</span> <span style=\"background-color:#99ff99\">data</span> <span style=\"background-color:#99ff99\">##set</span> <span style=\"background-color:#99ff99\">or</span> <span style=\"background-color:#99ff99\">knowledge</span> <span style=\"background-color:#99ff99\">base</span> <span style=\"background-color:#99ff99\">to</span> <span style=\"background-color:#99ff99\">find</span> <span style=\"background-color:#99ff99\">relevant</span> <span style=\"background-color:#99ff99\">documents</span> <span style=\"background-color:#99ff99\">or</span> <span style=\"background-color:#99ff99\">passages</span> <span style=\"background-color:#99ff99\">that</span> <span style=\"background-color:#99ff99\">are</span> <span style=\"background-color:#99ff99\">related</span> <span style=\"background-color:#99ff99\">to</span> <span style=\"background-color:#99ff99\">the</span> <span style=\"background-color:#99ff99\">input</span> <span style=\"background-color:#99ff99\">query</span> <span style=\"background-color:#99ff99\">.</span> <span style=\"background-color:#99ff99\">this</span> <span style=\"background-color:#99ff99\">component</span> <span style=\"background-color:#99ff99\">typically</span> <span style=\"background-color:#99ff99\">uses</span> <span style=\"background-color:#99ff99\">advanced</span> <span style=\"background-color:#99ff99\">search</span> <span style=\"background-color:#99ff99\">algorithms</span> <span style=\"background-color:#99ff99\">and</span> <span style=\"background-color:#99ff99\">em</span> <span style=\"background-color:#99ff99\">##bed</span> <span style=\"background-color:#99ff99\">##ding</span> <span style=\"background-color:#99ff99\">##s</span> <span style=\"background-color:#99ff99\">to</span> <span style=\"background-color:#99ff99\">identify</span> <span style=\"background-color:#99ff99\">the</span> <span style=\"background-color:#99ff99\">most</span> <span style=\"background-color:#99ff99\">per</span> <span style=\"background-color:#99ff99\">##tine</span> <span style=\"background-color:#99ff99\">##nt</span> <span style=\"background-color:#99ff99\">information</span> <span style=\"background-color:#99ff99\">.</span> <br><br><span style=\"background-color:#9999ff\">the</span> <span style=\"background-color:#9999ff\">generation</span> <span style=\"background-color:#9999ff\">component</span> <span style=\"background-color:#9999ff\">takes</span> <span style=\"background-color:#9999ff\">the</span> <span style=\"background-color:#9999ff\">retrieved</span> <span style=\"background-color:#9999ff\">documents</span> <span style=\"background-color:#9999ff\">as</span> <span style=\"background-color:#9999ff\">additional</span> <span style=\"background-color:#9999ff\">context</span> <span style=\"background-color:#9999ff\">and</span> <span style=\"background-color:#9999ff\">generates</span> <span style=\"background-color:#9999ff\">a</span> <span style=\"background-color:#9999ff\">coherent</span> <span style=\"background-color:#9999ff\">and</span> <span style=\"background-color:#9999ff\">context</span> <span style=\"background-color:#9999ff\">##ually</span> <span style=\"background-color:#9999ff\">accurate</span> <span style=\"background-color:#9999ff\">response</span> <span style=\"background-color:#9999ff\">.</span> <span style=\"background-color:#9999ff\">this</span> <span style=\"background-color:#9999ff\">is</span> <span style=\"background-color:#9999ff\">usually</span> <span style=\"background-color:#9999ff\">achieved</span> <span style=\"background-color:#9999ff\">using</span> <span style=\"background-color:#9999ff\">transform</span> <span style=\"background-color:#9999ff\">##er</span> <span style=\"background-color:#9999ff\">-</span> <span style=\"background-color:#9999ff\">based</span> <span style=\"background-color:#9999ff\">models</span> <span style=\"background-color:#9999ff\">like</span> <span style=\"background-color:#9999ff\">bert</span> <span style=\"background-color:#9999ff\">or</span> <span style=\"background-color:#9999ff\">gp</span> <span style=\"background-color:#9999ff\">##t</span> <span style=\"background-color:#9999ff\">,</span> <span style=\"background-color:#9999ff\">which</span> <span style=\"background-color:#9999ff\">can</span> <span style=\"background-color:#9999ff\">process</span> <span style=\"background-color:#9999ff\">the</span> <span style=\"background-color:#9999ff\">input</span> <span style=\"background-color:#9999ff\">query</span> <span style=\"background-color:#9999ff\">along</span> <span style=\"background-color:#9999ff\">with</span> <span style=\"background-color:#9999ff\">the</span> <span style=\"background-color:#9999ff\">retrieved</span> <span style=\"background-color:#9999ff\">information</span> <span style=\"background-color:#9999ff\">to</span> <span style=\"background-color:#9999ff\">produce</span> <span style=\"background-color:#9999ff\">high</span> <span style=\"background-color:#9999ff\">-</span> <span style=\"background-color:#9999ff\">quality</span> <span style=\"background-color:#9999ff\">text</span> <span style=\"background-color:#9999ff\">.</span> <br><br><span style=\"background-color:#ffff99\">enhanced</span> <span style=\"background-color:#ffff99\">accuracy</span> <span style=\"background-color:#ffff99\">:</span> <span style=\"background-color:#ffff99\">by</span> <span style=\"background-color:#ffff99\">using</span> <span style=\"background-color:#ffff99\">relevant</span> <span style=\"background-color:#ffff99\">external</span> <span style=\"background-color:#ffff99\">documents</span> <span style=\"background-color:#ffff99\">,</span> <span style=\"background-color:#ffff99\">rag</span> <span style=\"background-color:#ffff99\">can</span> <span style=\"background-color:#ffff99\">generate</span> <span style=\"background-color:#ffff99\">more</span> <span style=\"background-color:#ffff99\">accurate</span> <span style=\"background-color:#ffff99\">and</span> <span style=\"background-color:#ffff99\">informed</span> <span style=\"background-color:#ffff99\">responses</span> <span style=\"background-color:#ffff99\">.</span> <span style=\"background-color:#ffff99\">context</span> <span style=\"background-color:#ffff99\">##ual</span> <span style=\"background-color:#ffff99\">relevance</span> <span style=\"background-color:#ffff99\">:</span> <span style=\"background-color:#ffff99\">the</span> <span style=\"background-color:#ffff99\">retrieval</span> <span style=\"background-color:#ffff99\">component</span> <span style=\"background-color:#ffff99\">ensures</span> <span style=\"background-color:#ffff99\">that</span> <span style=\"background-color:#ffff99\">the</span> <span style=\"background-color:#ffff99\">generated</span> <span style=\"background-color:#ffff99\">text</span> <span style=\"background-color:#ffff99\">is</span> <span style=\"background-color:#ffff99\">context</span> <span style=\"background-color:#ffff99\">##ually</span> <span style=\"background-color:#ffff99\">relevant</span> <span style=\"background-color:#ffff99\">to</span> <span style=\"background-color:#ffff99\">the</span> <span style=\"background-color:#ffff99\">query</span> <span style=\"background-color:#ffff99\">.</span> <span style=\"background-color:#ffff99\">scala</span> <span style=\"background-color:#ffff99\">##bility</span> <span style=\"background-color:#ffff99\">:</span> <span style=\"background-color:#ffff99\">rag</span> <span style=\"background-color:#ffff99\">can</span> <span style=\"background-color:#ffff99\">be</span> <span style=\"background-color:#ffff99\">scaled</span> <span style=\"background-color:#ffff99\">to</span> <span style=\"background-color:#ffff99\">work</span> <span style=\"background-color:#ffff99\">with</span> <span style=\"background-color:#ffff99\">vast</span> <span style=\"background-color:#ffff99\">data</span> <span style=\"background-color:#ffff99\">##set</span> <span style=\"background-color:#ffff99\">##s</span> <span style=\"background-color:#ffff99\">,</span> <span style=\"background-color:#ffff99\">making</span> <span style=\"background-color:#ffff99\">it</span> <span style=\"background-color:#ffff99\">suitable</span> <span style=\"background-color:#ffff99\">for</span> <span style=\"background-color:#ffff99\">applications</span> <span style=\"background-color:#ffff99\">requiring</span> <span style=\"background-color:#ffff99\">extensive</span> <span style=\"background-color:#ffff99\">knowledge</span> <span style=\"background-color:#ffff99\">bases</span> <span style=\"background-color:#ffff99\">.</span> <br><br><span style=\"background-color:#99ffff\">question</span> <span style=\"background-color:#99ffff\">answering</span> <span style=\"background-color:#99ffff\">systems</span> <span style=\"background-color:#99ffff\">:</span> <span style=\"background-color:#99ffff\">rag</span> <span style=\"background-color:#99ffff\">can</span> <span style=\"background-color:#99ffff\">be</span> <span style=\"background-color:#99ffff\">used</span> <span style=\"background-color:#99ffff\">to</span> <span style=\"background-color:#99ffff\">improve</span> <span style=\"background-color:#99ffff\">the</span> <span style=\"background-color:#99ffff\">performance</span> <span style=\"background-color:#99ffff\">of</span> <span style=\"background-color:#99ffff\">question</span> <span style=\"background-color:#99ffff\">answering</span> <span style=\"background-color:#99ffff\">systems</span> <span style=\"background-color:#99ffff\">by</span> <span style=\"background-color:#99ffff\">providing</span> <span style=\"background-color:#99ffff\">precise</span> <span style=\"background-color:#99ffff\">and</span> <span style=\"background-color:#99ffff\">detailed</span> <span style=\"background-color:#99ffff\">answers</span> <span style=\"background-color:#99ffff\">.</span> <span style=\"background-color:#99ffff\">customer</span> <span style=\"background-color:#99ffff\">support</span> <span style=\"background-color:#99ffff\">:</span> <span style=\"background-color:#99ffff\">in</span> <span style=\"background-color:#99ffff\">customer</span> <span style=\"background-color:#99ffff\">support</span> <span style=\"background-color:#99ffff\">,</span> <span style=\"background-color:#99ffff\">rag</span> <span style=\"background-color:#99ffff\">can</span> <span style=\"background-color:#99ffff\">assist</span> <span style=\"background-color:#99ffff\">in</span> <span style=\"background-color:#99ffff\">generating</span> <span style=\"background-color:#99ffff\">accurate</span> <span style=\"background-color:#99ffff\">responses</span> <span style=\"background-color:#99ffff\">to</span> <span style=\"background-color:#99ffff\">customer</span> <span style=\"background-color:#99ffff\">que</span> <span style=\"background-color:#99ffff\">##ries</span> <span style=\"background-color:#99ffff\">by</span> <span style=\"background-color:#99ffff\">referencing</span> <span style=\"background-color:#99ffff\">a</span> <span style=\"background-color:#99ffff\">large</span> <span style=\"background-color:#99ffff\">database</span> <span style=\"background-color:#99ffff\">of</span> <span style=\"background-color:#99ffff\">knowledge</span> <span style=\"background-color:#99ffff\">.</span> <span style=\"background-color:#99ffff\">content</span> <span style=\"background-color:#99ffff\">creation</span> <span style=\"background-color:#99ffff\">:</span> <span style=\"background-color:#99ffff\">rag</span> <span style=\"background-color:#99ffff\">can</span> <span style=\"background-color:#99ffff\">aid</span> <span style=\"background-color:#99ffff\">content</span> <span style=\"background-color:#99ffff\">creators</span> <span style=\"background-color:#99ffff\">by</span> <span style=\"background-color:#99ffff\">providing</span> <span style=\"background-color:#99ffff\">relevant</span> <span style=\"background-color:#99ffff\">information</span> <span style=\"background-color:#99ffff\">and</span> <span style=\"background-color:#99ffff\">generating</span> <span style=\"background-color:#99ffff\">high</span> <span style=\"background-color:#99ffff\">-</span> <span style=\"background-color:#99ffff\">quality</span> <span style=\"background-color:#99ffff\">content</span> <span style=\"background-color:#99ffff\">based</span> <span style=\"background-color:#99ffff\">on</span> <span style=\"background-color:#99ffff\">the</span> <span style=\"background-color:#99ffff\">retrieved</span> <span style=\"background-color:#99ffff\">data</span> <span style=\"background-color:#99ffff\">.</span> <br><br><span style=\"background-color:#ff99ff\">retrieval</span> <span style=\"background-color:#ff99ff\">-</span> <span style=\"background-color:#ff99ff\">augmented</span> <span style=\"background-color:#ff99ff\">generation</span> <span style=\"background-color:#ff99ff\">(</span> <span style=\"background-color:#ff99ff\">rag</span> <span style=\"background-color:#ff99ff\">)</span> <span style=\"background-color:#ff99ff\">represents</span> <span style=\"background-color:#ff99ff\">a</span> <span style=\"background-color:#ff99ff\">significant</span> <span style=\"background-color:#ff99ff\">advancement</span> <span style=\"background-color:#ff99ff\">in</span> <span style=\"background-color:#ff99ff\">nl</span> <span style=\"background-color:#ff99ff\">##p</span> <span style=\"background-color:#ff99ff\">by</span> <span style=\"background-color:#ff99ff\">combining</span> <span style=\"background-color:#ff99ff\">the</span> <span style=\"background-color:#ff99ff\">best</span> <span style=\"background-color:#ff99ff\">aspects</span> <span style=\"background-color:#ff99ff\">of</span> <span style=\"background-color:#ff99ff\">retrieval</span> <span style=\"background-color:#ff99ff\">and</span> <span style=\"background-color:#ff99ff\">generation</span> <span style=\"background-color:#ff99ff\">methods</span> <span style=\"background-color:#ff99ff\">.</span> <span style=\"background-color:#ff99ff\">its</span> <span style=\"background-color:#ff99ff\">ability</span> <span style=\"background-color:#ff99ff\">to</span> <span style=\"background-color:#ff99ff\">utilize</span> <span style=\"background-color:#ff99ff\">vast</span> <span style=\"background-color:#ff99ff\">data</span> <span style=\"background-color:#ff99ff\">##set</span> <span style=\"background-color:#ff99ff\">##s</span> <span style=\"background-color:#ff99ff\">for</span> <span style=\"background-color:#ff99ff\">generating</span> <span style=\"background-color:#ff99ff\">context</span> <span style=\"background-color:#ff99ff\">##ually</span> <span style=\"background-color:#ff99ff\">accurate</span> <span style=\"background-color:#ff99ff\">and</span> <span style=\"background-color:#ff99ff\">high</span> <span style=\"background-color:#ff99ff\">-</span> <span style=\"background-color:#ff99ff\">quality</span> <span style=\"background-color:#ff99ff\">text</span> <span style=\"background-color:#ff99ff\">makes</span> <span style=\"background-color:#ff99ff\">it</span> <span style=\"background-color:#ff99ff\">a</span> <span style=\"background-color:#ff99ff\">powerful</span> <span style=\"background-color:#ff99ff\">tool</span> <span style=\"background-color:#ff99ff\">for</span> <span style=\"background-color:#ff99ff\">various</span> <span style=\"background-color:#ff99ff\">applications</span> <span style=\"background-color:#ff99ff\">.</span> <br><br>"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from langchain_text_splitters import HTMLHeaderTextSplitter\n",
    "\n",
    "def color_text_chunks(text, chunk_size, overlap, text_splitter):\n",
    "    # modified for HTMLHeaderTextSplitter\n",
    "    docs = text_splitter.split_text(text)\n",
    "    chunks = [doc.page_content for doc in docs]  # Access the text attribute\n",
    "\n",
    "    # Define colors\n",
    "    colors = ['#ff9999', '#99ff99', '#9999ff', '#ffff99', '#99ffff', '#ff99ff', '#cccccc',\n",
    "              '#ff6666', '#66ff66', '#6666ff', '#ffff66', '#66ffff', '#ff66ff', '#ccccff',\n",
    "              '#996699', '#669999', '#999966', '#669966', '#966696', '#696669']\n",
    "\n",
    "    # Define color positions for each chunk\n",
    "    color_positions = []\n",
    "    for i in range(len(chunks)):\n",
    "        chunk_tokens = tokenizer.tokenize(chunks[i])\n",
    "        chunk_length = len(chunk_tokens)\n",
    "        if chunk_length > overlap:\n",
    "            unique_length = chunk_length - overlap\n",
    "            chunk_colors = [colors[i % len(colors)]] * unique_length + \\\n",
    "                           [blend_colors([colors[i % len(colors)], colors[(i+1) % len(colors)]])] * overlap\n",
    "        else:\n",
    "            chunk_colors = [blend_colors([colors[i % len(colors)], colors[(i+1) % len(colors)]])] * chunk_length\n",
    "        color_positions.append(chunk_colors)\n",
    "\n",
    "    # Adjust colors for overlapping tokens in the next chunk\n",
    "    for i in range(1, len(color_positions)):\n",
    "        overlap_color = blend_colors([colors[(i-1) % len(colors)], colors[i % len(colors)]])\n",
    "        color_positions[i] = [overlap_color] * overlap + color_positions[i][overlap:]\n",
    "\n",
    "    # Generate colored HTML\n",
    "    colored_text = \"\"\n",
    "    for i, chunk in enumerate(chunks):\n",
    "        tokens = tokenizer.tokenize(chunk)\n",
    "        for j, token in enumerate(tokens):\n",
    "            color = color_positions[i][j]\n",
    "            token_html = f'<span style=\"background-color:{color}\">{token}</span>'\n",
    "            colored_text += token_html + ' '\n",
    "        colored_text += '<br><br>'\n",
    "\n",
    "    return HTML(colored_text)\n",
    "\n",
    "\n",
    "text = '''\n",
    "<!DOCTYPE html>\n",
    "<html lang=\"en\">\n",
    "<head>\n",
    "    <meta charset=\"UTF-8\">\n",
    "    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n",
    "    <title>Retrieval-Augmented Generation (RAG)</title>\n",
    "</head>\n",
    "<body>\n",
    "    <h1>Retrieval-Augmented Generation (RAG)</h1>\n",
    "\n",
    "    <h2>Introduction</h2>\n",
    "    <p>Retrieval-Augmented Generation (RAG) is a technique in natural language processing (NLP) that combines the strengths of retrieval-based methods and generation-based methods. It is designed to enhance the quality and accuracy of generated text by leveraging a large corpus of documents during the text generation process.</p>\n",
    "\n",
    "    <h2>How RAG Works</h2>\n",
    "\n",
    "    <h3>Retrieval Component</h3>\n",
    "    <p>The retrieval component is responsible for searching a large dataset or knowledge base to find relevant documents or passages that are related to the input query. This component typically uses advanced search algorithms and embeddings to identify the most pertinent information.</p>\n",
    "\n",
    "    <h3>Generation Component</h3>\n",
    "    <p>The generation component takes the retrieved documents as additional context and generates a coherent and contextually accurate response. This is usually achieved using transformer-based models like BERT or GPT, which can process the input query along with the retrieved information to produce high-quality text.</p>\n",
    "\n",
    "    <h2>Advantages of RAG</h2>\n",
    "    <ul>\n",
    "        <li><strong>Enhanced Accuracy</strong>: By using relevant external documents, RAG can generate more accurate and informed responses.</li>\n",
    "        <li><strong>Contextual Relevance</strong>: The retrieval component ensures that the generated text is contextually relevant to the query.</li>\n",
    "        <li><strong>Scalability</strong>: RAG can be scaled to work with vast datasets, making it suitable for applications requiring extensive knowledge bases.</li>\n",
    "    </ul>\n",
    "\n",
    "    <h2>Applications of RAG</h2>\n",
    "    <ul>\n",
    "        <li><strong>Question Answering Systems</strong>: RAG can be used to improve the performance of question answering systems by providing precise and detailed answers.</li>\n",
    "        <li><strong>Customer Support</strong>: In customer support, RAG can assist in generating accurate responses to customer queries by referencing a large database of knowledge.</li>\n",
    "        <li><strong>Content Creation</strong>: RAG can aid content creators by providing relevant information and generating high-quality content based on the retrieved data.</li>\n",
    "    </ul>\n",
    "\n",
    "    <h2>Conclusion</h2>\n",
    "    <p>Retrieval-Augmented Generation (RAG) represents a significant advancement in NLP by combining the best aspects of retrieval and generation methods. Its ability to utilize vast datasets for generating contextually accurate and high-quality text makes it a powerful tool for various applications.</p>\n",
    "</body>\n",
    "</html>\n",
    "'''\n",
    "\n",
    "\n",
    "headers_to_split_on = [\n",
    "    (\"h1\", \"Header 1\"),\n",
    "    (\"h2\", \"Header 2\"),\n",
    "    (\"h3\", \"Header 3\"),\n",
    "]\n",
    "\n",
    "text_splitter = HTMLHeaderTextSplitter(headers_to_split_on)\n",
    "\n",
    "color_text_chunks(text, chunk_size, overlap, text_splitter)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1174348a-976d-49ff-a3be-59b36c35327c",
   "metadata": {
    "tags": []
   },
   "source": [
    "## Proposition chunking"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "83fbbd2d-00ec-4d0e-9910-805d985638cb",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[\n",
      "  \"Prior to restoration work performed between 1990 and 2001, Leaning Tower of Pisa leaned at an angle of 5.5 degrees.\",\n",
      "  \"Leaning Tower of Pisa now leans at about 3.99 degrees.\",\n",
      "  \"The top of Leaning Tower of Pisa is displaced horizontally 3.9 meters (12 ft 10 in) from the center.\"\n",
      "]\n"
     ]
    }
   ],
   "source": [
    "# from the original article: https://github.com/chentong0/factoid-wiki\n",
    "from transformers import AutoTokenizer, AutoModelForSeq2SeqLM\n",
    "import torch\n",
    "import json\n",
    "\n",
    "model_name = \"chentong00/propositionizer-wiki-flan-t5-large\"\n",
    "device = \"cuda\" if torch.cuda.is_available() else \"cpu\"\n",
    "tokenizer = AutoTokenizer.from_pretrained(model_name)\n",
    "model = AutoModelForSeq2SeqLM.from_pretrained(model_name).to(device)\n",
    "\n",
    "title = \"Leaning Tower of Pisa\"\n",
    "section = \"\"\n",
    "content = \"Prior to restoration work performed between 1990 and 2001, Leaning Tower of Pisa leaned at an angle of 5.5 degrees, but the tower now leans at about 3.99 degrees. This means the top of the tower is displaced horizontally 3.9 meters (12 ft 10 in) from the center.\"\n",
    "\n",
    "input_text = f\"Title: {title}. Section: {section}. Content: {content}\"\n",
    "\n",
    "input_ids = tokenizer(input_text, return_tensors=\"pt\").input_ids\n",
    "outputs = model.generate(input_ids.to(device), max_new_tokens=512).cpu()\n",
    "\n",
    "output_text = tokenizer.decode(outputs[0], skip_special_tokens=True)\n",
    "try:\n",
    "    prop_list = json.loads(output_text)\n",
    "except:\n",
    "    prop_list = []\n",
    "    print(\"[ERROR] Failed to parse output text as JSON.\")\n",
    "print(json.dumps(prop_list, indent=2))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "48329acd-5da1-4b7c-89be-386275d8688e",
   "metadata": {},
   "source": [
    "# Quantization"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "63eafd61-d110-456e-862d-287e5c935dfd",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA2QAAAIjCAYAAABswtioAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAAB+WklEQVR4nOzdd3jV9Pv/8ddpoYvSstsChTIUKFNWqbKpFCgoKAqIUJAhMmTIVGSIiqIgyFRUhooyFD4KUkSWg8ouArKHoFBARksRWmjfvz/8Nj8OLdBCMYzn47pywXnnTnInPck590nyjsMYYwQAAAAA+M+52J0AAAAAANyvKMgAAAAAwCYUZAAAAABgEwoyAAAAALAJBRkAAAAA2ISCDAAAAABsQkEGAAAAADahIAMAAAAAm1CQAQAAAIBNKMgA4CoOh0MjRoywO41b9umnn6p06dLKnj27cuXKZXc6OnTokBwOh959993bvqyZM2fK4XDo0KFDN4wNCgpShw4drNerV6+Ww+HQ6tWrb1t+t6JDhw4KCgqyOw3bjBgxQg6HI0Oxt7IPZHQ7p76vZ86cman5ZyU73xNX7z8AMo+CDEAa+/fv1/PPP6/ixYvLw8NDPj4+euSRRzRhwgRduHDB7vSQAbt27VKHDh1UokQJTZ8+XR9++KHdKQH/KfaBrLN27VqNGDFCZ8+etTsV4J6Uze4EANxZlixZoqeeekru7u5q3769ypUrp6SkJP38888aMGCAduzYcc9/sblw4YKyZbu7D4+rV69WSkqKJkyYoJIlS9qdzl2ldu3aunDhgtzc3OxOJV3Tp09XSkqK3Wnc8dgHss7atWs1cuRIdejQIc2Zxt27d8vFhd/3gVtxd3/jAJClDh48qNatW6to0aJauXKlAgICrHE9evTQvn37tGTJEhszvH1SUlKUlJQkDw8PeXh42J3OLTtx4oQk3RGXKt5tXFxc7uj3QPbs2e1O4a5wN+wD58+fV44cOexO45a4u7vbnQJw1+MnDQCWMWPGKCEhQR9//LFTMZaqZMmS6t27t/X68uXLGjVqlEqUKCF3d3cFBQXp5ZdfVmJiotN0QUFBatq0qVavXq2qVavK09NT5cuXt+7R+frrr1W+fHl5eHioSpUq2rJli9P0HTp0kLe3tw4cOKDw8HDlyJFDBQsW1GuvvSZjjFPsu+++q4cfflh58+aVp6enqlSpogULFqRZF4fDoZ49e+rzzz9X2bJl5e7urqioKGvclfeQnTt3Tn369FFQUJDc3d1VoEABPfroo9q8ebPTPOfPn68qVarI09NT+fLl07PPPqu//vor3XX566+/1Lx5c3l7eyt//vzq37+/kpOTr/GXcTZlyhQr54IFC6pHjx5OlxIFBQVp+PDhkqT8+fNn6J64Xbt2qWXLlsqTJ488PDxUtWpVffPNN04xqfdl/fzzz3rxxReVP39+5cqVS88//7ySkpJ09uxZtW/fXrlz51bu3Lk1cODANH+fVO+9956KFi0qT09P1alTR9u3b7+pnCRpx44dql+/vjw9PVW4cGG9/vrr6Z5BMsbo9ddfV+HCheXl5aV69eppx44daeLSu4esbt26KleunH7//XfVq1dPXl5eKlSokMaMGZNm+j/++EOPPfaYcuTIoQIFCqhv375atmxZhu5Ly8h77er7herWrSuHw5HucOV9TWfPnlWfPn0UGBgod3d3lSxZUm+//XaabfXll1+qSpUqypkzp3x8fFS+fHlNmDDhunlLmd/3Fi1apHLlysnd3V1ly5a19r8r/fzzz6pWrZo8PDxUokQJffDBBzfMQ7rxPnCjfehazp49qw4dOsjX11e5cuVSZGRkhi/jS91/1qxZo+7du6tAgQIqXLiwNX7p0qWqVauWcuTIoZw5cyoiIiLd92fqdvPw8FC5cuW0cOHCNDHXug/yWve77dq1S08//bTy588vT09PlSpVSq+88oqkf+/ZGzBggCSpWLFi1nsr9f7M9O4hO3DggJ566inlyZNHXl5eqlGjRpof81JznDdvnt544w0VLlxYHh4eatCggfbt25eRTQrcOwwA/J9ChQqZ4sWLZzg+MjLSSDItW7Y0kydPNu3btzeSTPPmzZ3iihYtakqVKmUCAgLMiBEjzHvvvWcKFSpkvL29zWeffWaKFCli3nrrLfPWW28ZX19fU7JkSZOcnOy0HA8PD/PAAw+Ydu3amUmTJpmmTZsaSebVV191WlbhwoVN9+7dzaRJk8y4ceNM9erVjSSzePFipzhJpkyZMiZ//vxm5MiRZvLkyWbLli3WuOHDh1uxzzzzjHFzczP9+vUzH330kXn77bdNs2bNzGeffWbFzJgxw0gy1apVM++9954ZPHiw8fT0NEFBQebMmTNp1qVs2bLmueeeM1OnTjVPPvmkkWSmTJlyw20+fPhwI8mEhYWZiRMnmp49expXV1dTrVo1k5SUZIwxZuHChaZFixZGkpk6dar59NNPzdatW685z+3btxtfX18THBxs3n77bTNp0iRTu3Zt43A4zNdff51mHStVqmQaNWpkJk+ebNq1a2ckmYEDB5qaNWuaZ555xkyZMsX6+8yaNcua/uDBg0aSKV++vAkKCjJvv/22GTlypMmTJ4/Jnz+/iY2NzXROx44dM/nz5ze5c+c2I0aMMO+884554IEHTIUKFYwkc/DgQSt26NChRpJp0qSJmTRpknnuuedMwYIFTb58+UxkZKQVt2rVKiPJrFq1ymqrU6eOKViwoAkMDDS9e/c2U6ZMMfXr1zeSzHfffWfFJSQkmOLFixtPT08zePBgM378eFO9enVTsWLFNPNMT0bea5GRkaZo0aLW6++//958+umnTkN4eLiRZJYsWWKMMeb8+fOmQoUKJm/evObll18206ZNM+3btzcOh8P07t3baV6STIMGDczkyZPN5MmTTc+ePc1TTz113byNydy+V7FiRRMQEGBGjRplxo8fb4oXL268vLzM33//bcX99ttvxtPT0xQpUsSMHj3ajBo1yvj5+Vl/2+u53j6QkX0ove2ckpJiateubVxcXEz37t3NxIkTTf369a18ZsyYcd2cUvef4OBgU6dOHTNx4kTz1ltvGWOMmT17tnE4HKZRo0Zm4sSJ5u233zZBQUEmV65cTu/hZcuWGRcXF1OuXDkzbtw488orrxhfX19TtmxZp1zTew8b8//3wStz3bp1q/Hx8TF58+Y1Q4YMMR988IEZOHCgKV++vDW+TZs2RpJ57733rPdYQkKCMebf4/uV+09sbKzx8/MzOXPmNK+88ooZN26cqVixonFxcXHad1NzfOihh0yVKlXMe++9Z0aMGGG8vLxM9erVr7stgXsNBRkAY4wxcXFxRpJ5/PHHMxQfExNjJJnOnTs7tffv399IMitXrrTaihYtaiSZtWvXWm3Lli0zkoynp6f5448/rPYPPvggzReJ1MKvV69eVltKSoqJiIgwbm5u5uTJk1b7P//845RPUlKSKVeunKlfv75TuyTj4uJiduzYkWbdri7IfH19TY8ePa65LZKSkkyBAgVMuXLlzIULF6z2xYsXG0lm2LBhadbltddec5pH6peS6zlx4oRxc3Mz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OzBjxoxbXn5AQIC6d++u7t2768SJE6pcubLeeOMNNW7c2FrX3bt3q379+k7T7d69O8u2xZXLufJsYVJSkg4ePGid7ciM1Plkz579pqa/GalnBK60Z88e6++YmZyKFi2a7vx2796dJi512Vduu5MnT2bpL/FFixbV77//LmOM05fizPQad7332rV8+eWXGj9+vMaPH686deqkGV+iRAklJCRk6G/s5uamZs2aqVmzZkpJSVH37t31wQcf6NVXX71mIZzV+15qb38Z+dtmxq3sQ0WLFtWKFSuUkJDgdJbsVvKRZF26WaBAgRsuX0p//7k6h9SzTFf3AHn12anUbXCjH+Iyc/li0aJF090mu3btssYDcMYliwAsAwcOVI4cOdS5c2cdP348zfj9+/db3V83adJEkjR+/HinmHHjxkn69/6prDZp0iTr/8YYTZo0SdmzZ1eDBg0k/ftLq8PhcPoV+NChQ1q0aNFNLzM5OTnNJVcFChRQwYIFre79q1atqgIFCmjatGlOXf4vXbpUO3fuzLJtERYWJjc3N73//vtOvx5//PHHiouLu6nlFChQQHXr1tUHH3ygY8eOpRl/8uTJW8o5PYsWLXK6L239+vVat26dVXBkJqcmTZro119/1fr1653Gf/75507ThIWFKXv27Jo4caLTtrv6/XurwsPD9ddffzl1z3/x4kVNnz79htNm5L2Wnu3bt6tz58569tlnnR5LcaWnn35a0dHRWrZsWZpxZ8+e1eXLlyVJp06dchrn4uKiChUqSNJ1c8jqfc/V1VXh4eFatGiRDh8+bLXv3Lkz3XXIqFvZh5o0aaLLly9r6tSpVltycrImTpx40/lI/75nfHx89Oabb+rSpUtpxqe+3wMCAlSpUiXNmjXL6X2yfPnyNPdlFS1aVK6urta9gamuvK9Q+rfwrV27tj755BOn7Sw5n6FKfVZaRrr4b9KkidavX6/o6Gir7fz58/rwww8VFBR00/e7AfcyzpABsJQoUUJz5sxRq1atVKZMGbVv317lypVTUlKS1q5dq/nz51vPm6lYsaIiIyP14Ycf6uzZs6pTp47Wr1+vWbNmqXnz5qpXr16W5ubh4aGoqChFRkYqJCRES5cu1ZIlS/Tyyy9b92NFRERo3LhxatSokZ555hmdOHFCkydPVsmSJfXbb7/d1HLPnTunwoULq2XLlqpYsaK8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V66swMBArV69OlPzGj16tKpVq6acOXOqQIECat68uXbv3u0UU7duXTkcDqehW7duTjGHDx9WRESEvLy8VKBAAQ0YMECXL192ilm9erUqV64sd3d3lSxZUjNnzkyTz+TJkxUUFCQPDw+FhIRo/fr1mVofAAAAAMiMTBdkCxYsUMWKFSVJ3377rQ4ePKhdu3apb9++euWVVzI1rzVr1qhHjx769ddftXz5cl26dEkNGzbU+fPnneK6dOmiY8eOWcOYMWOsccnJyYqIiFBSUpLWrl2rWbNmaebMmRo2bJgVc/DgQUVERKhevXqKiYlRnz591LlzZy1btsyKmTt3rvr166fhw4dr8+bNqlixosLDw3XixInMbiIAAAAAyBCHMcZkZgIPDw/t27dPhQsXVteuXeXl5aXx48fr4MGDqlixouLj4286mZMnT6pAgQJas2aNateuLenfM2SVKlXS+PHj051m6dKlatq0qY4ePSo/Pz9J0rRp0zRo0CCdPHlSbm5uGjRokJYsWaLt27db07Vu3Vpnz55VVFSUJCkkJETVqlXTpEmTJEkpKSkKDAxUr169NHjw4BvmHh8fL19fX8XFxcnHx+emt0FWcTjszgC482Xu6AcAAJAxmakNMn2GzM/PT7///ruSk5MVFRWlRx99VJL0zz//yNXV9eYy/j9xcXGSpDx58ji1f/7558qXL5/KlSunIUOG6J9//rHGRUdHq3z58lYxJknh4eGKj4/Xjh07rJiwsDCneYaHhys6OlqSlJSUpE2bNjnFuLi4KCwszIq5WmJiouLj450GAAAAAMiMbJmdoGPHjnr66acVEBAgh8NhFTHr1q1T6dKlbzqRlJQU9enTR4888ojKlStntT/zzDMqWrSoChYsqN9++02DBg3S7t279fXXX0uSYmNjnYoxSdbr2NjY68bEx8frwoULOnPmjJKTk9ON2bVrV7r5jh49WiNHjrzp9QUAAACATBdkI0aMULly5XTkyBE99dRTcnd3lyS5urpm6NK+a+nRo4e2b9+un3/+2am9a9eu1v/Lly+vgIAANWjQQPv371eJEiVuenm3asiQIerXr5/1Oj4+XoGBgbblAwAAAODuk+mCTJJatmwpSbp48aLVFhkZedNJ9OzZU4sXL9aPP/6owoULXzc2JCREkrRv3z6VKFFC/v7+aXpDPH78uCTJ39/f+je1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T5+u8+fPq2PHjsqZM6dKliyppUuXppn3L7/8ogoVKsjDw0M1atTQ9u3bncb//PPP1vEiMDBQL774os6fP2+NP3HihJo1a2btX59//nmaZezdu1e1a9eWh4eHgoODtXz5cqfxN/M3kKTXX39dBQoUUM6cOdW5c2cNHjzY6fiwevVqVa9eXTly5FCuXLn0yCOP3FOFLG5d3bp19eKLL2rgwIHKkyeP/P39NWLECGt8UFCQJKlFixZyOBzW6+joaAUFBenFF19UsWLFVLNmTT3//PNav379DZeZN2/eNPtz9uzZJf3/z7hPPvlERYoUkbe3t7p3767k5GSNGTNG/v7+KlCggN5444008z127JgaN24sT09PFS9ePM1n8JEjR/T0008rV65cypMnjx5//HGnz+Hk5GT169fP+h4ycOBAXf0kqvPnz6t9+/by9vZWQECAxo4dmyaPqy9ZdDgc+uijj9SiRQt5eXnpgQce0DfffOM0zY2+V/3xxx9q1qyZcufOrRw5cqhs2bL67rvvbritcfMoyJBlTp8+rWXLlql79+7y9PR0Gufv76+2bdtq7ty5Tgecd999VxUrVtSWLVv06quvppnnwYMH1bJlSzVv3lxbt27V888/71TUXcv+/fu1aNEiLV68WIsXL9aaNWv01ltvWePPnz+vfv36aePGjVqxYoVcXFzUokULpaSk3MIWSN/w4cM1dOhQbd68WdmyZdMzzzyjgQMHasKECfrpp5+0b98+DRs2zGmaFStWaOfOnVq9erW++OILff311xo5cqQ1fvTo0Zo9e7amTZumHTt2qG/fvnr22We1Zs0aSf9+EDzxxBNq1qyZYmJirC9PV1q3bp06deqknj17KiYmRvXq1dPrr79+w/VZtWqV9u/fr1WrVmnWrFmaOXOmZs6caY1v3769jh49qtWrV+urr77Shx9+qBMnTljjv/rqK7333nv64IMPtHfvXi1atEjly5e/mU2LO1xCQoI+++wzlSxZ8oZnWl955RWNHTtWGzduVLZs2fTcc885zadJkyZasWKFtmzZokaNGqlZs2Y6fPiw0zyuPp507txZc+bMUWJiohXz2WefqVChQqpfv/4trdusWbOUL18+rV+/Xr169dILL7ygp556Sg8//LA2b96shg0bql27dvrnn3+cphswYIDGjh2rDRs2KH/+/GrWrJn1g8b+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ktStWzft3btXAwYM0O7duzVnzhynjjckWb9kv/vuu9q7d68mTZqkqKioW8q7dOnSCgsLU9euXbV+/Xpt2bJFXbt2laenp/X3mjlzpj7++GNt375dBw4c0GeffSZPT88bnrXA3SExMdHaF3bu3KlevXopISFBzZo1u+l5PvDAA/r6668VExOjrVu36plnnsn0r71vvfWWjDHpnr2/mjEmzX4dGxubJZ3+vPbaa1qxYoV16WS+fPms5zQNGjRIa9eutTra2bt3r/73v/9ZnXqUKlVKjRo10vPPP69169Zp06ZN6ty5s1MnSmFhYXrwwQcVGRmprVu36qeffspQR0g30qtXL3388ceaNWuW9u7dq9dff12//fabtV8fPHhQQ4YMUXR0tP744w99//332rt3r/UFFciooKAgrVixwunztFmzZvr66681depUHThwQL/88otefPFFVa9e3eny3PScOnUqzb588eLFW85z/vz5+uSTT7Rnzx4NHz5c69evt/bVtm3bKl++fHr88cf1008/6eDBg1q9erVefPFF/fnnn5Kk3r1766233tKiRYu0a9cude/e3enHFW9vb3Xq1EkDBgzQypUrrWPG1YVpZmXke1WfPn20bNkyHTx4UJs3b9aqVavYl28zCjJkqQceeEAbN25U8eLF9fTTT6tEiRLq2rWr6tWrp+joaOXJkydT8ytWrJgWLFigr7/+WhUqVNDUqVOtLxc3e3mei4uLvvzyS23atEnlypVT37599c4779zUvKZPn66AgACnoU2bNjc1rys1aNBADzzwgGrXrq1WrVrpsccec+oaeNSoUXr11Vc1evRolSlTRo0aNdKSJUtUrFgxSf9e3vTVV19p0aJFqlixoqZNm6Y333zTaRk1atTQ9OnTNWHCBFWsWFHff/+9hg4desu5z549W35+fqpdu7ZatGihLl26KGfOnNaDdXPlyqXp06frkUceUYUKFfTDDz/o22+/5Xln94ioqChrXwgJCdGGDRs0f/581a1b96bnOW7cOOXOnVsPP/ywmjVrpvDwcKf7FG+kTZs2ypYtm9q0aZOhBzzHx8en2a8zcp9LRrz11lvq3bu3qlSpotjYWH377bdyc3OT9O9lWGvWrNGePXtUq1YtPfTQQxo2bJjTF84ZM2aoYMGCqlOnjp544gl17drV6TmMLi4uWrhwoS5cuKDq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",
      "text/plain": [
       "<Figure size 1000x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "from sentence_transformers import SentenceTransformer\n",
    "from sentence_transformers.quantization import quantize_embeddings\n",
    "from datasets import load_dataset\n",
    "\n",
    "\n",
    "sentences = [\n",
    "    \"I need to go to the bank to deposit some money.\",\n",
    "    \"The river bank was flooded after the heavy rain.\",\n",
    "    \"She works at a bank downtown.\",\n",
    "    \"We set up our picnic by the river bank.\",\n",
    "    \"He withdrew cash from the bank yesterday.\",\n",
    "    \"There are many fish along the river bank.\",\n",
    "    \"The bank offers loans with low interest rates.\",\n",
    "    \"Children were playing on the river bank.\",\n",
    "    \"I have a meeting at the bank in the morning.\",\n",
    "    \"The erosion is affecting the river bank.\"\n",
    "]\n",
    "\n",
    "# Load an embedding model\n",
    "model = SentenceTransformer(\"mixedbread-ai/mxbai-embed-large-v1\")\n",
    "\n",
    "# Encode the sentences without quantization\n",
    "embeddings = model.encode(sentences)\n",
    "\n",
    "# Apply binary quantization\n",
    "binary_embeddings = quantize_embeddings(embeddings, precision=\"binary\")\n",
    "\n",
    "# Prepare an example calibration dataset\n",
    "corpus = load_dataset(\"nq_open\", split=\"train[:1000]\")[\"question\"]\n",
    "calibration_embeddings = model.encode(corpus)\n",
    "\n",
    "# Apply int8 quantization\n",
    "int8_embeddings = quantize_embeddings(\n",
    "    embeddings,\n",
    "    precision=\"int8\",\n",
    "    calibration_embeddings=calibration_embeddings,\n",
    ")\n",
    "\n",
    "# Collect nbytes information and fold reduction\n",
    "embeddings_nbytes = embeddings.nbytes\n",
    "binary_embeddings_nbytes = binary_embeddings.nbytes\n",
    "int8_embeddings_nbytes = int8_embeddings.nbytes\n",
    "\n",
    "\n",
    "binary_fold_reduction = embeddings_nbytes / binary_embeddings_nbytes\n",
    "int8_fold_reduction = embeddings_nbytes / int8_embeddings_nbytes\n",
    "\n",
    "# Plot the nbytes and fold reduction\n",
    "labels = ['Original Embeddings', 'Binary Embeddings', 'Int8 Embeddings']\n",
    "nbytes_values = [embeddings_nbytes, binary_embeddings_nbytes, int8_embeddings_nbytes]\n",
    "\n",
    "plt.figure(figsize=(10, 6))\n",
    "bars = plt.bar(labels, nbytes_values, color=['blue', 'green', 'red'])\n",
    "\n",
    "plt.text(1, binary_embeddings_nbytes, f'{binary_fold_reduction:.2f}x', ha='center', va='bottom', fontsize=12)\n",
    "plt.text(2, int8_embeddings_nbytes, f'{int8_fold_reduction:.2f}x', ha='center', va='bottom', fontsize=12)\n",
    "\n",
    "plt.xlabel('Embedding Type')\n",
    "plt.ylabel('Size in Bytes')\n",
    "plt.title('Comparison of embedding sizes and fold reduction')\n",
    "plt.savefig('vector quantization.jpg', format='jpeg', bbox_inches='tight')\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "740cbbe1-7c50-4655-97ed-8b695d315880",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n",
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n",
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n",
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n",
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n",
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n",
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n",
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n",
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n",
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n",
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n",
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n",
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n",
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n",
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n",
      "/opt/conda/lib/python3.10/site-packages/huggingface_hub/file_download.py:1132: FutureWarning: `resume_download` is deprecated and will be removed in version 1.0.0. Downloads always resume when possible. If you want to force a new download, use `force_download=True`.\n",
      "  warnings.warn(\n"
     ]
    },
    {
     "data": {
      "image/png": "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HDx4EJUrV8b8+fOxbds2LFy4EHXq1MGQIUP0nv/9998jLS0NY8aMQVZWFj777DO0b98e//33n9RWpsaUkJCAdu3aQaVSSdt98803cHNzMzjPGTNmYO7cuYiNjUVsbCyOHz+OTp06mfxfvYcPH6JLly544YUX0K9fP2zatAlTpkxB3bp10bVrVwDaHob27dvj7t27GD9+PIKDg7F27Vr8+eefJh3jv//+Q6dOnRAYGIhZs2ZBpVJh5syZUruYoiSvj6XfG2bNmoUFCxZg5MiRiI6ORmpqKv79918cP34cHTt2LPAcRo4cidWrV6NPnz546623cOTIESxYsADnz5/H//73P71trRnHsWPHkJOTg0aNGukt79+/P2bNmoWEhAQEBwdLy/fv3487d+5gwIABBe7T3PcnncDAQHz99dd4/fXX0atXL+kDfb169aRtVCoVOnfujFatWuHjjz8ucF9FMeV9eteuXejevTtCQkKka/38+fP49ddfpQ9qu3btwtWrVzF8+HAEBwfj7Nmz+Oabb3D27FkcPnxYSkwuXbqEn376CZ9++qn03qpLMvNLTExEixYtkJGRgXHjxsHf3x+rV6/Gc889h02bNhm8X5n6N6dWrVpwc3PDgQMHDPZRlFatWkEQBPz999/S67Fv3z7IZDLs379f2u7evXu4cOFCgcUAWrdujXHjxuHzzz/HO++8g5o1awKA9B0w7XovyGeffYbnnnsOgwcPRk5ODtatW4e+ffvi119/NehJ2b9/P7Zs2YLRo0fDy8sLn3/+OXr37o34+Hj4+/sDKNn7VUxMDDQaDfbv3y9NhdC12b59+6TtTpw4gfT0dLRu3drofky5fkw5l7NnzyImJgbe3t6YPHkynJ2dsWzZMrRt21b6Z685Fi9eLM0LfffddwHA5PfxQYMGYfz48UhPT4enpydUKhU2btyIiRMnGh1muHHjRmRkZOD111+Hv78/jh49ii+++AK3bt3Cxo0bAWjf2+/cuYNdu3bhhx9+MHrclStXIisrC6NGjYKrqysqV66MXr16Yf369Vi0aBHkcrm07U8//QRRFKV/7pj6e/ntt99i3Lhx6NOnD8aPH4+srCycPn0aR44cwaBBg/Ti6devHyIiIrBgwQIcP34c3333HYKCgvDhhx8W2Hbvvfce5s+fj2XLluGVV14BUPz33IKYeq2Y8nend+/eOHv2LN544w2Eh4cjKSkJu3btQnx8vG2GGotULCtXrhQBGHy5urqKq1at0tt23759IgBxzZo1esu3b99usDwsLEwEIP7999/SsqSkJNHV1VV86623pGUzZswQAYhbtmwxiE2j0YiiKIp//vmnCECsWbOmmJ2dLa3/7LPPRADif//9Jy1r06aNCEBcu3attOzChQsiAFEmk4mHDx+Wlu/YsUMEIK5cuVJalpGRYRDHoUOHRADi999/b9BurVq1ElUqld72M2fOFAGI9+7dE8+fPy9WqFBBbNq0qfjgwQODfeenO9eNGzfqLW/QoIEYFBQk3r9/X1p26tQpUSaTiUOGDDE49sCBA4s8Vt7z6NChg9TeoiiKEyZMEOVyuZiSklLo85999lmxbt26YlZWlrRMo9GILVq0EKtVq2ZwnM6dO+sdp3nz5qIgCOJrr70mLVOpVGKlSpXENm3aSMuuXbsmAhDd3NzEW7duScuPHDkiAhAnTJhgdkxvvvmmCEA8cuSItCwpKUn08fERAYjXrl2Tlrm4uIjdunXTi/2dd94RAYhDhw6Vlulevz///FNaprsm814/2dnZYnBwsNi7d29p2SeffCICELdu3Soty8zMFGvUqGGwT2N69uwpKhQK8caNG9Kyc+fOiXK5XMz/FhkWFqYXd0lfH2u8N9SvX1/s1q1boeesu951Tp48KQIQR44cqbfdpEmTRADiH3/8YZU4jPnuu+8M3p9EURQvXrwoAhC/+OILveWjR48WPT099d6DAIgzZ86UHpv6/mTMvXv3DPanM3ToUBGAOHXqVIN1+a8VnTZt2uhdA6a+T6tUKjEiIkIMCwsTHz58qLfPvNeesXP96aefDF6zhQsX6v2+Fha77nd+37590rK0tDQxIiJCDA8PF9VqtVnnklf16tXFrl27Giw3Re3atcV+/fpJjxs1aiT27dtXBCCeP39eFEVR3LJliwhAPHXqVIHnt3HjxgLfK0y93guS//XIyckR69SpI7Zv315vOQDRxcVFvHLlirTs1KlTBte8Oe9X+anVatHb21ucPHmyKIra68bf31/s27evKJfLxbS0NFEURXHRokWiTCbTu87y/w4Udv2Ycy4uLi5iXFyctOzOnTuil5eX2Lp1a2lZ/vcrHd37b94Yateurff7VRQA4pgxY8QHDx6ILi4u4g8//CCKoij+9ttvoiAI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7VpgQa///vsPly5dwurVq/UKJRmrzlnceOrUqYOGDRtizZo1qFSpEuLj46WKgTrm/F56eHigf//+6N+/P3JycvDCCy9g3rx5mDZtWrFuLVK1alV89NFHaNu2Lbp06YI9e/ZIxdYAy34mNOdaAUz7uxMZGYm33noLb731Fi5fvowGDRrgk08+wY8//mh2fObiUEMLUyqV2LlzJ1xcXKQPMP369YNarcacOXMMtlepVMW6EHv37o1Tp04ZVBsD7NMbIJfLDY77xRdfFOs/UoIg4JtvvkGfPn0wdOhQo+XMTRESEoIGDRpg9erVem185swZ7Ny5E7GxscXab0kFBQWhbdu2WLZsGe7evWuw3tRy9ObYunWr3ryxo0eP4siRI1JlQHNiio2NxeHDh3H06FG99fl7bTp06ABnZ2d88cUXetfG4sWLLXVaAIDOnTvj9u3betdJVlYWvv322yKfK5fL0blzZ2zduhXx8fHS8vPnz2PHjh0WjdMYa7w35C0bDmjH/FetWtWgLHxeut+F/K/NokWLAKBY97EpThwA0LhxY7i4uODff/81ur5///44fPgwVqxYgeTk5CKHGQIle3/SVd8y97WIjIzE4cOH9Sp4/vrrr8UePtWoUSNERERg8eLFBrHozk333+r852rsd073TydTzis2NhZHjx6V5gAB2nkt33zzDcLDw1GrVi0zzuSJc+fOISsrCy1atCjW8wFtT80ff/yBo0ePSolXgwYN4OXlhQ8++EAq4V4Yc9rCHHK5HIIg6F1n169fx9atW4u9v5K+XykUCjRt2hQ//fQT4uPj9Xq8MjMz8fnnnyMyMhIhISGF7qekbSaXy9GpUyf8/PPPemW8ExMTsXbtWrRq1UqaaqD7p4Nubhqgvf5Wr15tNK6SvI6TJk3CzJkzMX369EJjB/R/z0RR1LutQ954gOK100svvYSdO3di8eLF8Pf3l/5e65j6e5n/vdjFxQW1atWCKIpQKpVmx6VTr149bNu2DefPn0ePHj30Sulb8jOhOddKUX93MjIyDKpURkZGwsvLq8i/TZbCHq8S+v3336X/LiQlJWHt2rW4fPkypk6dKl0Ibdq0wauvvooFCxbg5MmT6NSpE5ydnXH58mVs3LgRn332md49aEzx9ttvY9OmTejbty9efvllNG7cGA8ePMAvv/yCpUuXon79+hY/18J0794d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DCQkJKBBgwbYvn27VBwjPj4eMpl+x9zFixexf/9+7Ny50+g+J0+ejMePH2PUqFFISUlBq1atsH37digUCqufj6U9uXly7kvF+3gRERERETkcuydeADB27FiMHTvW6Lq9e/caLIuKioIoigXuTxAEvP/++wbzvxyRrsdLSrx4Hy8iIiIiIodj9xsoU+Ge9HjlTurjHC8iIiIiIofDxKuUK7jHi3O8iIiIiIgcBROvUu5J4qXr8eIcLyIiIiIiR8PEq5TjHC8iIiIiIsfHxKuUk+Z4ubKqIRERERGRo2LiVcrp9XiJIud4ERERERE5ICZepVxadp6qhjmPAeSW0WePFxERERGRw2DiVcrp9XjpersEGeDsZseoiIiIiIjIHEy8SrnUvFUNpfldXoAg2DEqIiIiIiIyh5O9A6DCtakWgEq+bqjk5wbk3NEuZEVDIiIiIiKHwsSrlJvYKerJg2usaEhERERE5Ig41NCR8B5eREREREQOiYmXI+E9vIiIiIiIHBITL0eSk6b9znt4ERERERE5FCZejoQ9XkREREREDomJlyPhHC8iIiIiIofExMuRsMeLiIiIiMghMfFyJNIcLyZeRERERESOhImXI5F6vFhcg4iIiIjIkTDxciSc40VERERE5JCYeDkSzvEiIiIiInJITLwcCed4ERERERE5JCZejoRzvIiIiIiIHBITL0fCOV5ERERERA6JiZcj4RwvIiIiIiKHxMTLUahVgCpT+7MrhxoSERERETkSJl6OQjfMEGCPFxERERGRg2Hi5Sh0iZfcBXBysW8sRERERERkFiZejoLzu4iIiIiIHBYTL0fBioZERERERA6LiZejyM69eTLv4UVERERE5HCYeDkK9ngRERERETksJl6OgnO8iIiIiIgcFhMvR8EeLyIiIiIih8XEy1FwjhcRERERkcNi4uUo2ONFREREROSwmHg5CqnHi4kXEREREZGjYeLlKLLZ40VERERE5KiYeDmKHPZ4ERERERE5KiZejkLq8WJxDSIiIiIiR8PEy1Hk8D5eRERERESOiomXo+AcLyIiIiIih8XEy1FIPV4cakhERERE5GiYeDkKXTl59ngRERERETkcJ3sHQCYQRc7xIiIiolJNrVZDqVTaO4ynilKphJOTE7KysqBWq+0dzlPL2dkZcrnc6sdh4uUIVNmARqX92cXDvrEQERER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P/7xjwgJCcGwYcNw48YN7N27VynCiYj+X/ATLyKifujNN9+8661zKpUKn376KcaPH4+ZM2fCz88PM2bMQH19PVxdXe87huXLlyM7OxtBQUHYtGkTtm7dqnxKYmVlhX/84x/w8vLClClTEBAQgFmzZqG9vR22trYAgISEBLz44ouIiYlBeHg4bGxsutwKl56ejsceewzPPPMMtFotxo0bh5CQkPuK28fHBzt27MDOnTsRFBSEjIwMpYi6/Xa+W0xMTJCTk4Pr169j9OjRmD17drdb7PeGP/3pT1i6dCnS0tIQEBCAp556Crm5ufDx8bmn801NTXHp0iW89NJL8PPzw7Rp0xAVFYXly5d3O37SpElYt24d3n77bQwbNgzvvvsuMjMz8fjjj99zzBqNBkuWLEFQUBDGjx8PU1NTZGdn3/P5RET9gUrktj+KQkRERHpSU1OxYcMGXLhwwdihEBHRA4q3GhIREd3mb3/7Gx599FE4OjqipKQE6enpmD9/vrHDIiKiBxgLLyIiotvU1NTgz3/+M5qbm+Hl5YWEhAQsWbLE2GEREdEDjLcaEhERERERGRg31yAiIiIiIjIwFl5EREREREQGxsKLiIiIiIjIwFh4ERERERERGRgLLyIiIiIiIgNj4UVERERERGRgLLyIiIiIiIgMjIUXERERERGRgf0Pswjroijot4sAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 1000x500 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from transformers import AutoTokenizer, AutoModel\n",
    "from datasets import load_dataset\n",
    "import numpy as np\n",
    "from sentence_transformers import util, SentenceTransformer, evaluation\n",
    "import matplotlib.pyplot as plt\n",
    "from sentence_transformers.evaluation import (\n",
    "    EmbeddingSimilarityEvaluator,\n",
    "    SimilarityFunction,\n",
    ")\n",
    "\n",
    "# Load the models\n",
    "model_names = [\"tomaarsen/mpnet-base-nli-matryoshka\", \"tomaarsen/mpnet-base-nli\"]\n",
    "model_labels = [\"Matryoshka model\", \"Original model\"]\n",
    "models = [SentenceTransformer(name) for name in model_names]\n",
    "\n",
    "# Load the dataset\n",
    "stsb_test = load_dataset(\"mteb/stsbenchmark-sts\", split=\"test\")\n",
    "\n",
    "# Extract sentences and scores\n",
    "sentences1 = stsb_test[\"sentence1\"]\n",
    "sentences2 = stsb_test[\"sentence2\"]\n",
    "scores = [score / 5.0 for score in stsb_test[\"score\"]]\n",
    "\n",
    "# Define dimensions to truncate to\n",
    "dimensions = [768, 512, 256, 128, 64, 32, 16, 8]\n",
    "results = {name: [] for name in model_names}\n",
    "\n",
    "for mod_name in model_names:\n",
    "    for dim in dimensions:\n",
    "        # Truncate embeddings\n",
    "        model = SentenceTransformer(mod_name, truncate_dim=dim)\n",
    "        \n",
    "        # Evaluate similarity\n",
    "        evaluator = evaluation.EmbeddingSimilarityEvaluator(\n",
    "            sentences1, sentences2, scores, main_similarity=SimilarityFunction.COSINE, name=\"sts-test\"\n",
    "        )\n",
    "        score = evaluator(model)\n",
    "        results[mod_name].append(score['sts-test_spearman_cosine'])\n",
    "\n",
    "plt.figure(figsize=(10, 5))\n",
    "\n",
    "for name, label in zip(model_names, model_labels):\n",
    "    plt.plot(dimensions, results[name], label=label)\n",
    "\n",
    "plt.xlabel(\"N embedding dimensions\")\n",
    "plt.ylabel(\"Spearman correlation\")\n",
    "plt.title(\"Benchmark for n embedding dimensions (via truncation), with and without Matryoshka loss\")\n",
    "plt.legend()\n",
    "plt.grid(True)\n",
    "plt.savefig('vector_matryoshka.jpg', format='jpeg', bbox_inches='tight')\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5b9500ef-e3dc-40cd-a279-a214439830d8",
   "metadata": {},
   "source": [
    "# Evaluation"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "82df1493-e88a-4eb2-ad0e-b738aba530fd",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjcAAAHHCAYAAABDUnkqAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAABZPUlEQVR4nO3deVhU1f8H8PewzLCDyiYIIqLiCgqKaGYWiZqWZmquZLlri1bmVmh+lUxzyVzSn0uLhvuSa4parqmI5ooLCIiyqez7zPn9gU5OgAoCFy7v1/PM88iZe2c+9wjMm3PPPVchhBAgIiIikgk9qQsgIiIiKksMN0RERCQrDDdEREQkKww3REREJCsMN0RERCQrDDdEREQkKww3REREJCsMN0RERCQrDDdEREQkKww3RNXUe++9BxcXlxLtc+TIESgUChw5cqRcaqrqXnnlFbzyyivar2/fvg2FQoG1a9dKVhNRdcRwQ1RB1q5dC4VCoX0YGRmhYcOGGDduHOLj46Uur9J7HBQeP/T09FCzZk107doVJ0+elLo8IqpEDKQugKi6+frrr1GvXj1kZ2fj2LFjWLZsGfbs2YNLly7BxMSkwupYuXIlNBpNifZ5+eWXkZWVBaVSWU5VPVv//v3RrVs3qNVqXL9+HUuXLkWnTp1w5swZNG/eXLK6iKjyYLghqmBdu3aFt7c3AGDYsGGoVasW5s+fjx07dqB///5F7pORkQFTU9MyrcPQ0LDE++jp6cHIyKhM6yipVq1aYdCgQdqvO3TogK5du2LZsmVYunSphJVVbpmZmRUanomkxNNSRBJ79dVXAQCRkZEACubCmJmZ4datW+jWrRvMzc0xcOBAAIBGo8HChQvRtGlTGBkZwc7ODiNHjsTDhw8Lve7evXvRsWNHmJubw8LCAq1bt8b69eu1zxc15yY4OBheXl7afZo3b45FixZpny9uzs2mTZvg5eUFY2NjWFtbY9CgQYiNjdXZ5vFxxcbGomfPnjAzM4ONjQ0+++wzqNXqUvdfhw4dAAC3bt3SaU9OTsYnn3wCJycnqFQquLm5Yc6cOYVGqzQaDRYtWoTmzZvDyMgINjY26NKlC86ePavdZs2aNXj11Vdha2sLlUqFJk2aYNmyZaWuuSjJyckYP348XFxcoFKpUKdOHQwZMgRJSUkA/j2tefv2bZ39ivo/eeWVV9CsWTOEhobi5ZdfhomJCaZMmYLu3bvD1dW1yPf39fXVhu7Hfv31V+3/a82aNfHuu+8iJiamTI+bqDxw5IZIYo8/lGvVqqVty8/Ph7+/P1566SXMmzdP+xf3yJEjsXbtWgwdOhQfffQRIiMj8cMPPyAsLAzHjx/XjsasXbsW77//Ppo2bYrJkyfDysoKYWFh2LdvHwYMGFBkHQcOHED//v3x2muvYc6cOQCAq1ev4vjx4/j444+Lrf9xPa1bt0ZQUBDi4+OxaNEiHD9+HGFhYbCystJuq1ar4e/vDx8fH8ybNw8HDx7Ed999h/r162P06NGl6r/HH/Y1atTQtmVmZqJjx46IjY3FyJEj4ezsjBMnTmDy5Mm4d+8eFi5cqN32gw8+wNq1a9G1a1cMGzYM+fn5OHr0KE6dOqX9sF+2bBmaNm2KN998EwYGBvj9998xZswYaDQajB07tlR1Pyk9PR0dOnTA1atX8f7776NVq1ZISkrCzp07cefOHVhbW5f4Ne/fv4+uXbvi3XffxaBBg2BnZwcvLy8MGTIEZ86cQevWrbXbRkVF4dSpU5g7d662bdasWfjyyy/Rt29fDBs2DImJiVi8eDFefvnlQv+vRJWOIKIKsWbNGgFAHDx4UCQmJoqYmBgRHBwsatWqJYyNjcWdO3eEEEIEBAQIAGLSpEk6+x89elQAEOvWrdNp37dvn057cnKyMDc3Fz4+PiIrK0tnW41Go/13QECAqFu3rvbrjz/+WFhYWIj8/Pxij+Hw4cMCgDh8+LAQQojc3Fxha2srmjVrpvNeu3btEgDEV199pfN+AMTXX3+t85otW7YUXl5exb7nY5GRkQKAmDFjhkhMTBRxcXHi6NGjonXr1gKA2LRpk3bbmTNnClNTU3H9+nWd15g0aZLQ19cX0dHRQgghDh06JACIjz76qND7PdlXmZmZhZ739/cXrq6uOm0dO3YUHTt2LFTzmjVrnnpsX331lQAgtm7dWmwdj79/IiMjdZ7/7//J4zoAiOXLl+tsm5KSIlQqlfj000912r/99luhUChEVFSUEEKI27dvC319fTFr1iyd7S5evCgMDAwKtRNVNjwtRVTB/Pz8YGNjAycnJ7z77rswMzPDtm3b4OjoqLPdf0cyNm3aBEtLS7z++utISkrSPry8vGBmZobDhw8DKBiBSUtLw6RJkwrNj1EoFMXWZWVlhYyMDBw4cOC5j+Xs2bNISEjAmDFjdN7rjTfegLu7O3bv3l1on1GjRul83aFDB0RERDz3ewYGBsLGxgb29vba0Y7vvvsO77zzjnabTZs2oUOHDqhRo4ZOX/n5+UGtVuOvv/4CAGzZsgUKhQKBgYGF3ufJvjI2Ntb+OyUlBUlJSejYsSMiIiKQkpLy3LUXZ8uWLfDw8ECvXr2eWkdJqFQqDB06VKfNwsICXbt2xcaNGyGE0LZv2LABbdu2hbOzMwBg69at0Gg06Nu3r07/2dvbo0GDBtrvNaLKiqeliCrYkiVL0LBhQxgYGMDOzg6NGjWCnp7u3xkGBgaoU6eOTtuNGzeQkpICW1vbIl83ISEBwL+nuZo1a1aiusaMGYONGzeia9eucHR0ROfOndG3b1906dKl2H2ioqIAAI0aNSr0nLu7O44dO6bT9nhOy5Nq1KihM2coMTFRZw6OmZkZzMzMtF+PGDECffr0QXZ2Ng4dOoTvv/++0JydGzdu4J9//in0Xo892VcODg6oWbNmsccIAMePH0dgYCBOnjyJzMxMnedSUlJgaWn51P2f5datW+jdu/cLvcZ/OTo6FnlVW79+/bB9+3acPHkS7dq1w61btxAaGqpzqu7GjRsQQqBBgwZFvnZpJqMTVSSGG6IK1qZNm0ITN/9LpVIVCjwajQa2trZYt25dkfsU90H+vGxtbXH+/Hns378fe/fuxd69e7FmzRoMGTIEP/300wu99mP6+vrP3KZ169ba0AQUjNRMnz5d+3WDBg3g5+cHAOjevTv09fUxadIkdOrUSduvGo0Gr7/+OiZOnFjkezRs2PC5a7516xZee+01uLu7Y/78+XBycoJSqcSePXuwYMGCEl9OX1rFjeAUNxn7ydGmJ/Xo0QMmJibYuHEj2rVrh40bN0JPTw99+vTRbqPRaKBQKLB3794i/8+eDJtElRHDDVEVUb9+fRw8eBDt27cv9oPr8XYAcOnSJbi5uZXoPZRKJXr06IEePXpAo9FgzJgx+PHHH/Hll18W+Vp169YFAISHh2uv+nosPDxc+3xJrFu3DllZWdqvi7u657GpU6di5cqVmDZtGvbt2wegoA/S09O1Iag49evXx/79+/HgwYNiR29+//135OTkYOfOndrTNgDK9NRM/fr1cenSpadu83jCdHJysk77k0HweZiamqJ79+7YtGkT5s+fjw0bNqBDhw5wcHDQqUcIgXr16pUoCBJVFpxzQ1RF9O3bF2q1GjNnziz0XH5+vvZDr3PnzjA3N0dQUBCys7N1tntynsV/3b9/X+drPT09tGjRAgCQk5NT5D7e3t6wtbXF8uXLdbbZu3cvrl69ijfeeOO5ju1J7du3h5+fn/bxrHBjZWWFkSNHYv/+/Th//jyAgr46efIk9u/fX2j75ORk5OfnAwB69+4NIQRmzJhRaLvHffV45OLJvktJScGaNWtKfGzF6d27Ny5cuIBt27YVW8fj0Pp4vhBQMGqzYsWKEr9fv379cPfuXfzf//0fLly4gH79+uk8//bbb0NfXx8zZswo9D0jhCj0vUJU2XDkhqiK6NixI0aOHImgoCCcP38enTt3hqGhIW7cuIFNmzZh0aJFeOedd2BhYYEFCxZg2LBhaN26NQYMGIAaNWrgwoULyMzMLPYU07Bhw/DgwQO8+uqrqFOnDqKiorB48WJ4enqicePGRe5jaGiIOXPmYOjQoejYsSP69++vvRTcxcUF48ePL88u0fr444+xcOFCfPPNNwgODsbnn3+OnTt3onv37njvvffg5eWFjIwMXLx4EZs3b8bt27dhbW2NTp06YfDgwfj+++9x48YNdOnSBRqNBkePHkWnTp0wbtw4dO7cWTuiNXLkSKSnp2PlypWwtbXFvXv3yqT+zz//HJs3b0afPn3w/vvvw8vLCw8ePMDOnTuxfPlyeHh4oGnTpmjbti0mT56sHWkKDg7WBrWSeLx+0meffQZ9ff1C833q16+P//3vf5g8eTJu376Nnj17wtzcHJGRkdi2bRtGjBiBzz77rEyOnahcSHWZFlF18/hS3jNnzjx1u4CAAGFqalrs8ytWrBBeXl7C2NhYmJubi+bNm4uJEyeKu3fv6my3c+dO0a5dO2FsbCwsLCxEmzZtxG+//abzPk9eCr5582bRuXNnYWtrK5RKpXB2dhYjR44U9+7d025T1GXHQgixYcMG0bJlS6FSqUTNmjXFwIEDtZe2P+u4AgMDxfP8Knp8WfXcuXOLfP69994T+vr64ubNm0IIIdLS0sTkyZOFm5ubUCqVwtraWrRr107MmzdP5ObmavfLz88Xc+fOFe7u7kKpVAobGxvRtWtXERoaqtOXLVq0EEZGRsLFxUXMmTNHrF69utCl2aW9FFwIIe7fvy/GjRsnHB0dhVKpFHXq1BEBAQEiKSlJu82tW7eEn5+fUKlUws7OTkyZMkUcOHCgyEvBmzZt+tT3GzhwoAAg/Pz8it1my5Yt4qWXXhKmpqbC1NRUuLu7i7Fjx4rw8PBnHg+RlBRCPGWcmoiIiKiK4ZwbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSlWq3iJ9Go8Hdu3dhbm5e6rvtEhERUcUSQiAtLQ0ODg6F7r33X9Uu3Ny9exdOTk5Sl0FERESlEBMTgzp16jx1m2oXbszNzQEUdI6FhYXE1RAREdHzSE1NhZOTk/Zz/GmqXbh5fCrKwsKC4YaIiKiKeZ4pJZxQTERERLLCcENERESywnBDREREslLt5twQEVUEjUaD3NxcqcsgqlKUSuUzL/N+Hgw3RERlLDc3F5GRkdBoNFKXQlSl6OnpoV69elAqlS/0Ogw3RERlSAiBe/fuQV9fH05OTmXyVyhRdfB4kd179+7B2dn5hRbaZbghIipD+fn5yMzMhIODA0xMTKQuh6hKsbGxwd27d5Gfnw9DQ8NSvw7/pCAiKkNqtRoAXnhYnag6evxz8/jnqLQYboiIygHvXUdUcmX1c8NwQ0RERLIiabj566+/0KNHDzg4OEChUGD79u3P3OfIkSNo1aoVVCoV3NzcsHbt2nKvk4iIqo9Vq1ahc+fOUpchO/v27YOnp2eFXEUoabjJyMiAh4cHlixZ8lzbR0ZG4o033kCnTp1w/vx5fPLJJxg2bBj2799fzpUSEcnbe++9B4VCAYVCAaVSCTc3N3z99dfIz88HUPCH5ePnFQoFbGxs0K1bN1y8eFHiystWdnY2vvzySwQGBkpdSrnJzs7G2LFjUatWLZiZmaF3796Ij49/6j5P/t8/+Zg7dy4A4Pbt2/jggw9Qr149GBsbo379+ggMDNRZ66lLly4wNDTEunXryvX4AImvluratSu6du363NsvX74c9erVw3fffQcAaNy4MY4dO4YFCxbA39+/vMp8Ljn5aiSm5UhaQ3ViZ2EEQ32eVSUqS126dMGaNWuQk5ODPXv2YOzYsTA0NMTkyZO124SHh8PCwgJ3797F559/jjfeeAM3b96s0AnUeXl5L3QlzdNs3rwZFhYWaN++/Qu9TnnW+KLGjx+P3bt3Y9OmTbC0tMS4cePw9ttv4/jx48Xuc+/ePZ2v9+7diw8++AC9e/cGAFy7dg0ajQY//vgj3NzccOnSJQwfPhwZGRmYN2+edr/33nsP33//PQYPHlw+B/dIlboU/OTJk/Dz89Np8/f3xyeffFLsPjk5OcjJ+Td0pKamlkttl++m4u2lJ8rltamwBrZm2P/Jy9DT46RNorKiUqlgb28PABg9ejS2bduGnTt36oQbW1tbWFlZwd7eHp988gnefPNNXLt2DS1atCj2dY8fP46pU6fi9OnTUKlUaNOmDYKDg1GjRg24uLjgk08+0fk97unpiZ49e2L69OkACkYNli5dir179yIkJASffvopVq9ejalTp2L06NHa/cLCwuDl5YXIyEjUrVsXycnJ+Oyzz7Bjxw7k5OTA29sbCxYsgIeHR7G1BgcHo0ePHjptZ86cwZQpUxAWFoa8vDx4enpiwYIFaNWqlXab/9b4+eefY/r06dixYwdmzJiBK1euwMHBAQEBAZg6dSoMDAo+fufPn481a9YgIiICNWvWRI8ePfDtt9/CzMzs2f9hpZCSkoJVq1Zh/fr1ePXVVwEAa9asQePGjXHq1Cm0bdu2yP0ef188tmPHDnTq1Amurq4ACoJxly5dtM+7uroiPDwcy5Yt0wk3PXr0wLhx43Dr1i3Ur1+/rA9Pq0qFm7i4ONjZ2em02dnZITU1FVlZWTA2Ni60T1BQEGbMmFHutSkAqAw4klDeBIDcfA1uJKQjK08NU1WV+hamakgIgay8F7ustbSMDfVf6OoTY2Nj3L9/v8jnUlJSEBwcDODpl72fP38er732Gt5//30sWrQIBgYGOHz4cIkv9Z0+fTq++eYbLFy4EAYGBsjKysL69et1ws26devQvn171K1bFwDQp08fGBsbY+/evbC0tMSPP/6I1157DdevX0fNmjWLfJ9jx44VGlVIS0tDQEAAFi9eDCEEvvvuO3Tr1g03btyAubl5sTUePXoUQ4YMwffff48OHTrg1q1bGDFiBABoT3vp6enh+++/R7169RAREYExY8Zg4sSJWLp0abF90bVrVxw9erTY5+vWrYvLly8X+VxoaCjy8vJ0Bgrc3d3h7OyMkydPFhtunhQfH4/du3fjp59+eup2KSkphfrZ2dkZdnZ2OHr0KMPNi5g8eTImTJig/To1NRVOTk5l/j4tnWsg/H/Pf4qNSic7Tw33L/dJXQbRc8vKU6PJV9LMC7zytT9MlCX/NS+EQEhICPbv348PP/xQ57k6deoAKJgzCQBvvvkm3N3di32tb7/9Ft7e3jof1k2bNi1xTQMGDMDQoUO1Xw8cOBDfffcdoqOj4ezsDI1Gg+DgYEybNg1AQUg5ffo0EhISoFKpAADz5s3D9u3bsXnzZm3IeFJycjJSUlLg4OCg0/54hOOxFStWwMrKCn/++Se6d+9ebI3vv/8+Jk2ahICAAAAFoxkzZ87ExIkTteHmyRErFxcX/O9//8OoUaOeGm7+7//+D1lZWcU+/7TTYXFxcVAqlbCystJpt7OzQ1xcXLH7Pemnn36Cubk53n777WK3uXnzJhYvXqwzavOYg4MDoqKinuu9SqtKhRt7e/tCk57i4+NhYWFR5KgNUDDM+vgbm4iIirdr1y6YmZkhLy8PGo0GAwYM0J4aeuzo0aMwMTHBqVOnMHv2bCxfvvypr3n+/Hn06dPnhWvz9vbW+drT0xONGzfG+vXrMWnSJPz5559ISEjQvteFCxeQnp6OWrVq6eyXlZWFW7duFfkejwODkZGRTnt8fDymTZuGI0eOICEhAWq1GpmZmYiOjn5qjRcuXMDx48cxa9YsbZtarUZ2djYyMzNhYmKCgwcPIigoCNeuXUNqairy8/N1ni+Ko6Njcd1UIVavXo2BAwcW6qfHYmNj0aVLF/Tp0wfDhw8v9LyxsTEyMzPLtcYqFW58fX2xZ88enbYDBw7A19dXooqIiJ7O2FAfV76W5oIHY0P9Em3fqVMnLFu2DEqlEg4ODtp5IU+qV68erKys0KhRIyQkJKBfv37466+/iq+hmD88H9PT04MQQqctLy+v0HampqaF2gYOHKgNN+vXr0eXLl20YSY9PR21a9fGkSNHCu3331GLx2rVqgWFQoGHDx/qtAcEBOD+/ftYtGgR6tatC5VKBV9f30J3ff9vjenp6ZgxY0aRIxxGRka4ffs2unfvjtGjR2PWrFmoWbMmjh07hg8++AC5ubnFhpsXOS1lb2+P3NxcJCcn6/RDfHx8oXk1RTl69CjCw8OxYcOGIp+/e/cuOnXqhHbt2mHFihVFbvPgwQPY2Ng8871ehKThJj09HTdv3tR+HRkZifPnz6NmzZpwdnbG5MmTERsbi59//hkAMGrUKPzwww+YOHEi3n//fRw6dAgbN27E7t27pToEIqKnUigUpTo1JAVTU1O4ubk99/Zjx45FUFAQtm3bhl69ehW5TYsWLRASElLs3EcbGxudK3FSU1MRGRn5XO8/YMAATJs2DaGhodi8ebPOKFKrVq0QFxcHAwMDuLi4PNfrKZVKNGnSBFeuXNFZ5+b48eNYunQpunXrBgCIiYlBUlLSM1+vVatWCA8PL7ZPQ0NDodFo8N1332lvsLpx48Znvu6LnJby8vKCoaEhQkJCtFc6hYeHIzo6+rkGClatWgUvL68iJ2XHxsaiU6dO8PLywpo1a4q8aWx2djZu3bqFli1bPvO9XoiQ0OHDhwUK5ojqPAICAoQQQgQEBIiOHTsW2sfT01MolUrh6uoq1qxZU6L3TElJEQBESkpK2RwEVais3HxR94tdou4Xu0R6dp7U5RAVkpWVJa5cuSKysrKkLqVEAgICxFtvvVXs849/Xz98+FCnfeLEiaJ58+ZCo9EUuV94eLhQKpVi9OjR4sKFC+Lq1ati6dKlIjExUQghxKRJk4S9vb3466+/xD///CN69uwpzMzMRGBgoPY1AIht27YV+frt27cXHh4ewtzcXGRmZmrbNRqNeOmll4SHh4fYv3+/iIyMFMePHxdTpkwRZ86cKfY4J0yYIHr37q3T1rJlS/H666+LK1euiFOnTokOHToIY2NjsWDBgqfWuG/fPmFgYCCmT58uLl26JK5cuSJ+++03MXXqVCGEEOfPnxcAxMKFC8WtW7fEzz//LBwdHYvs57I0atQo4ezsLA4dOiTOnj0rfH19ha+vr842jRo1Elu3btVpS0lJESYmJmLZsmWFXvPOnTvCzc1NvPbaa+LOnTvi3r172seTDh8+LMzMzERGRkaRtT3t56ckn9+ShhspMNxUbQw3VNlVt3ATHR0tDAwMxIYNG4rd98iRI6Jdu3ZCpVIJKysr4e/vr32dlJQU0a9fP2FhYSGcnJzE2rVrhYeHx3OHm6VLlwoAYsiQIYWeS01NFR9++KFwcHAQhoaGwsnJSQwcOFBER0cXW+vly5eFsbGxSE5O1radO3dOeHt7CyMjI9GgQQOxadMmUbdu3WeGGyEKAk67du2EsbGxsLCwEG3atBErVqzQPj9//nxRu3ZtYWxsLPz9/cXPP/9c7uEmKytLjBkzRtSoUUOYmJiIXr16FQohAAoNHvz444+F+uaxNWvWFDlY8d8xlBEjRoiRI0c+tbayCDeKRwdRbaSmpsLS0hIpKSmwsLCQuhwqoSevlro8w5+XglOlk52djcjISNSrV6/YCZdUufXp0wetWrXSWd+HXlxSUhIaNWqEs2fPol69ekVu87Sfn5J8fnNhFiIioifMnTu33BbRq85u376NpUuXFhtsyhL/7CUiInqCi4tLofV96MV5e3sXuly+vHDkhoiIiGSF4YaIiIhkheGGiKgcVLNrNYjKRFn93DDcEBGVIX39glWB/7t6LRE92+Ofm8c/R6XFCcVERGXIwMAAJiYmSExMhKGhYZGrtBJRYRqNBomJiTAxMSny1h8lwXBDRFSGFAoFateujcjIyHK/8zGR3Ojp6cHZ2RkKheKFXofhhoiojCmVSjRo0ICnpohKSKlUlsloJ8MNEVE50NPT4wrFRBLhyWAiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVycPNkiVL4OLiAiMjI/j4+OD06dPFbpuXl4evv/4a9evXh5GRETw8PLBv374KrJaIiIgqO0nDzYYNGzBhwgQEBgbi3Llz8PDwgL+/PxISEorcftq0afjxxx+xePFiXLlyBaNGjUKvXr0QFhZWwZUTERFRZSVpuJk/fz6GDx+OoUOHokmTJli+fDlMTEywevXqIrf/5ZdfMGXKFHTr1g2urq4YPXo0unXrhu+++66CKyciIqLKSrJwk5ubi9DQUPj5+f1bjJ4e/Pz8cPLkySL3ycnJgZGRkU6bsbExjh07Vuz75OTkIDU1VedBRERE8iVZuElKSoJarYadnZ1Ou52dHeLi4orcx9/fH/Pnz8eNGzeg0Whw4MABbN26Fffu3Sv2fYKCgmBpaal9ODk5lelxEBERUeUi+YTikli0aBEaNGgAd3d3KJVKjBs3DkOHDoWeXvGHMXnyZKSkpGgfMTExFVgxERERVTTJwo21tTX09fURHx+v0x4fHw97e/si97GxscH27duRkZGBqKgoXLt2DWZmZnB1dS32fVQqFSwsLHQeREREJF+ShRulUgkvLy+EhIRo2zQaDUJCQuDr6/vUfY2MjODo6Ij8/Hxs2bIFb731VnmXS0RERFWEgZRvPmHCBAQEBMDb2xtt2rTBwoULkZGRgaFDhwIAhgwZAkdHRwQFBQEA/v77b8TGxsLT0xOxsbGYPn06NBoNJk6cKOVhEBERUSUiabjp168fEhMT8dVXXyEuLg6enp7Yt2+fdpJxdHS0znya7OxsTJs2DRERETAzM0O3bt3wyy+/wMrKSqIjICIiospGIYQQUhdRkVJTU2FpaYmUlBTOv6mCsvPUcP+yYFXqyzP8YaqSNJ8TEVEFKcnnd5W6WoqIiIjoWRhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYkDzdLliyBi4sLjIyM4OPjg9OnTz91+4ULF6JRo0YwNjaGk5MTxo8fj+zs7AqqloiIiCo7ScPNhg0bMGHCBAQGBuLcuXPw8PCAv78/EhISitx+/fr1mDRpEgIDA3H16lWsWrUKGzZswJQpUyq4ciIiIqqsJA038+fPx/DhwzF06FA0adIEy5cvh4mJCVavXl3k9idOnED79u0xYMAAuLi4oHPnzujfv/8zR3uIiIio+pAs3OTm5iI0NBR+fn7/FqOnBz8/P5w8ebLIfdq1a4fQ0FBtmImIiMCePXvQrVu3Yt8nJycHqampOg8iejqNRuCnE7fx1Y5LyFdrpC6HiKhEDKR646SkJKjVatjZ2em029nZ4dq1a0XuM2DAACQlJeGll16CEAL5+fkYNWrUU09LBQUFYcaMGWVaO5Gc3U/PwYSNF/Dn9UQAwNut6sDTyUraooiISkDyCcUlceTIEcyePRtLly7FuXPnsHXrVuzevRszZ84sdp/JkycjJSVF+4iJianAiomqllMR99Ht+6PaYAOAIzdEVOVINnJjbW0NfX19xMfH67THx8fD3t6+yH2+/PJLDB48GMOGDQMANG/eHBkZGRgxYgSmTp0KPb3CWU2lUkGlUpX9ARDJiFojsOTwTSw8eB0aAbjZmuF+eg4eZuZJXRoRUYlJNnKjVCrh5eWFkJAQbZtGo0FISAh8fX2L3CczM7NQgNHX1wcACCHKr1giGUtIy8aQ1X9j/oGCYPOOVx3sHNcelsaGUpdGRFQqko3cAMCECRMQEBAAb29vtGnTBgsXLkRGRgaGDh0KABgyZAgcHR0RFBQEAOjRowfmz5+Pli1bwsfHBzdv3sSXX36JHj16aEMOET2/4zeT8HHweSSl58DYUB//69kMvb3qSF0WEdELkTTc9OvXD4mJifjqq68QFxcHT09P7Nu3TzvJODo6WmekZtq0aVAoFJg2bRpiY2NhY2ODHj16YNasWVIdAlGVpNYILAq5gcWHbkAIoJGdOZYMbAk3W3OpSyMiemEKUc3O56SmpsLS0hIpKSmwsLCQuhwqoew8Ndy/3AcAuDzDH6YqSfN5lRSfmo2PfgvD35EPAAD92zghsEdTGBnqjn6+Mvcwbt/PxOZRvvB2qSlFqUREWiX5/C7VJ4NarcbatWsREhKChIQEaDS6V1McOnSoNC9LROXsz+uJmLDhPO5n5MJUqY/ZbzfHW56OUpdFRFSmShVuPv74Y6xduxZvvPEGmjVrBoVCUdZ1EVEZyldr8N2B61h25BYAoHFtCywZ0BKuNmYSV0ZEVPZKFW6Cg4OxcePGp64MTESVw93kLHz0WxjORj0EAAxuWxdT32hc6DQUEZFclCrcKJVKuLm5lXUtRFTGDl2Lx4SNF5CcmQdzlQG+6d0Cb7SoLXVZRETlqlTr3Hz66adYtGgR15YhqqTy1BrM2n0F7689i+TMPDR3tMSuj15isCGiaqFUIzfHjh3D4cOHsXfvXjRt2hSGhrqLfW3durVMiiOikot5kIkPfwvD+ZhkAMDQ9i6Y1NUdKgOehiKi6qFU4cbKygq9evUq61qI6AXtvxyHzzddQGp2PiyMDDC3jwf8mxZ9OxMiIrkqVbhZs2ZNWddBRC8gJ1+NoD3XsPbEbQCAp5MVFvdvCaeaJtIWRkQkgRdaAS0xMRHh4eEAgEaNGsHGxqZMiiKi5xd1PwPj1ofhYmwKAGB4h3r43N8dSgPJbh1HRCSpUoWbjIwMfPjhh/j555+1C/jp6+tjyJAhWLx4MUxM+NciUUXY/c89TNryD9Jy8mFlYojv+njgtcZ2UpdFRCSpUv1pN2HCBPz555/4/fffkZycjOTkZOzYsQN//vknPv3007KukYj+IztPjWnbL2Ls+nNIy8mHd90a2PNRBwYbIiKUcuRmy5Yt2Lx5M1555RVtW7du3WBsbIy+ffti2bJlZVUfEf1HRGI6xq4Pw9V7qQCAMa/Ux/jXG8JQn6ehiIiAUoabzMxM7Z27n2Rra4vMzMwXLoqIirbjfCymbL2IjFw1apoqsaCfJzo25Fw3IqInlepPPV9fXwQGBiI7O1vblpWVhRkzZsDX17fMiiOiAlm5akza8g8+Dj6PjFw1fOrVxN6POzDYEBEVoVQjN4sWLYK/vz/q1KkDDw8PAMCFCxdgZGSE/fv3l2mBRNXdzYQ0jF0XhvD4NCgUwIed3PDRaw1gwNNQRERFKlW4adasGW7cuIF169bh2rVrAID+/ftj4MCBMDY2LtMCiaqzzaF38OX2S8jKU8PaTIWF/TzxUgNrqcsiIqrUSr3OjYmJCYYPH16WtRDRI5m5+fhy+2VsOXcHANDerRYW9POErbmRxJUREVV+zx1udu7cia5du8LQ0BA7d+586rZvvvnmCxdGVF2Fx6VhzLpQ3ErMgJ4C+MSvIcZ2coO+nkLq0oiIqoTnDjc9e/ZEXFwcbG1t0bNnz2K3UygUUKvVZVEbUbUihMCGMzEI3HkZOfka2FmosOjdlmjrWkvq0oiIqpTnDjePVyL+77+J6MWl5+Rj6raL2HH+LgDg5YY2WNDXA7XMVBJXRkRU9bzQvaWelJycDCsrq7J6OaJq4/LdFHy4PgwRSRnQ11Pg084NMerl+tDjaSgiolIp1bWkc+bMwYYNG7Rf9+nTBzVr1oSjoyMuXLhQZsURyZkQAr+cikKvpScQkZSB2pZG2DCiLca84sZgQ0T0AkoVbpYvXw4nJycAwIEDB3Dw4EHs27cPXbt2xeeff16mBRLJUWp2HsatD8OX2y8hN1+D19xtseejDvB2qSl1aUREVV6pTkvFxcVpw82uXbvQt29fdO7cGS4uLvDx8SnTAonk5p87yRi3PgzRDzJhoKfAF13cMaxDPSgUHK0hIioLpRq5qVGjBmJiYgAA+/btg5+fH4CCYXZeKUVUNCEE1hyPRO9lJxD9IBOOVsbYOMoXw192ZbAhIipDpRq5efvttzFgwAA0aNAA9+/fR9euXQEAYWFhcHNzK9MCieQgJTMPE7dcwP7L8QCAzk3sMPcdD1iaGEpcGRGR/JQq3CxYsAAuLi6IiYnBt99+CzMzMwDAvXv3MGbMmDItkKiqS83OQ+/lJ3AzIR2G+gpM6dYY77Vz4WgNEVE5KVW4MTQ0xGeffVaoffz48S9cEJGcaDQCnwSfx82EdNhbGGHFEC+0qGMldVlERLLG2y8QlaMFB6/j0LUEqAz0sHKIN5rXsZS6JCIi2ePtF4jKyd6L97D40E0AwDe9mzPYEBFVEN5+gagcXItLxaebCha0HPZSPfRqWUfiioiIqo9SXQpORMVLzszFiJ9DkZmrRnu3WpjU1V3qkoiIqpVShZuPPvoI33//faH2H374AZ988smL1kRUZeWrNfjwt4IF+urUMMYP/VvBQJ9/QxARVaRS/dbdsmUL2rdvX6i9Xbt22Lx58wsXRVRVzd0fjqM3kmBsqI8Vg71Rw1QpdUlERNVOqcLN/fv3YWlZeHKkhYUFkpKSXrgooqpox/lY/PhXBABgbp8WaOJgIXFFRETVU6nCjZubG/bt21eofe/evXB1dX3hooiqmkuxKfhiyz8AgNGv1Ef3Fg4SV0REVH2VahG/CRMmYNy4cUhMTMSrr74KAAgJCcF3332HhQsXlmV9RJXe/fQcjPwlFNl5GrzSyAafdW4kdUlERNVaqcLN+++/j5ycHMyaNQszZ84EALi4uGDZsmUYMmRImRZIVJnlqTUYtz4MsclZqGdtikXvtoS+Hm+rQEQkpVKFGwAYPXo0Ro8ejcTERBgbG2vvL0VUnczafRUnI+7DVKmPFYO9YGnMG2ESEUmt1Neo5ufn4+DBg9i6dSuEEACAu3fvIj09vcyKI6rMNp2NwdoTtwEA8/t5ooGdubQFERERgFKO3ERFRaFLly6Ijo5GTk4OXn/9dZibm2POnDnIycnB8uXLy7pOokrlfEwypm6/BAD4+LUG8G9qL3FFRET0WKlGbj7++GN4e3vj4cOHMDY21rb36tULISEhZVYcUWWUkJaNUb+EIjdfA7/Gdvj4tQZSl0RERE8o1cjN0aNHceLECSiVuguUubi4IDY2tkwKI6qMcvM1GPPrOcSlZsPN1gwL+nlAjxOIiYgqlVKN3Gg0miLv/H3nzh2Ym3PeAcnXjN8v42zUQ5gbGWDFYC+YG3ECMRFRZVOqcNO5c2ed9WwUCgXS09MRGBiIbt26lVVtRJXK+r+jse7vaCgUwPfvtoSrDa8QJCKqjEp1WmrevHno0qULmjRpguzsbAwYMAA3btyAtbU1fvvtt7KukUhyZ28/QODOggnEn3VuhE7uthJXRERExSlVuHFycsKFCxewYcMGXLhwAenp6fjggw8wcOBAnQnGRHIQl5KNUb+eQ55aoFtze4x5pb7UJRER0VOUONzk5eXB3d0du3btwsCBAzFw4MDyqIuoUsjOU2Pkr6FISs+Bu7055r7jAYWCE4iJiCqzEs+5MTQ0RHZ2dnnUQlSpCCEwbfslXIhJhqWxIVYM9oapqtSLehMRUQUp1YTisWPHYs6cOcjPzy/reogqjZ9PRmFz6B3oKYAlA1rBuZaJ1CUREdFzKNWfoWfOnEFISAj++OMPNG/eHKampjrPb926tUyKI5LKyVv38fWuKwCAKd0a46UG1hJXREREz6tU4cbKygq9e/cu61qIKoXY5CyMXX8Oao1AT08HfPBSPalLIiKiEihRuNFoNJg7dy6uX7+O3NxcvPrqq5g+fTqvkCLZyMpVY8TPZ/EgIxfNHC3wTe8WnEBMRFTFlGjOzaxZszBlyhSYmZnB0dER33//PcaOHVtetRFVKCEEJm39B5fvpqKWqRI/DvaGkaG+1GUREVEJlSjc/Pzzz1i6dCn279+P7du34/fff8e6deug0WjKqz6iCvN/RyOx4/xd6OspsGRgKzhacUSSiKgqKlG4iY6O1rm9gp+fHxQKBe7evVvmhRFVpKM3EhG09yoA4KvuTdDWtZbEFRERUWmVKNzk5+fDyMhIp83Q0BB5eXkvVMSSJUvg4uICIyMj+Pj44PTp08Vu+8orr0ChUBR6vPHGGy9UA1Vf0fczMW59GDQC6ONVB0N860pdEhERvYASTSgWQuC9996DSqXStmVnZ2PUqFE6l4OX5FLwDRs2YMKECVi+fDl8fHywcOFC+Pv7Izw8HLa2he/fs3XrVuTm5mq/vn//Pjw8PNCnT5+SHAoRACAjJx8jfjmLlKw8eDpZYWbPZpxATERUxZUo3AQEBBRqGzRo0AsVMH/+fAwfPhxDhw4FACxfvhy7d+/G6tWrMWnSpELb16xZU+fr4OBgmJiYMNxQiQkh8PnmC7gWlwYbcxWWD/LiBGIiIhkoUbhZs2ZNmb55bm4uQkNDMXnyZG2bnp4e/Pz8cPLkyed6jVWrVuHdd98ttJAg0bMsPXILey7GwVBfgeWDWsHe0ujZOxERUaUn6Y1ykpKSoFarYWdnp9NuZ2eHa9euPXP/06dP49KlS1i1alWx2+Tk5CAnJ0f7dWpqaukLJtk4fC0B8/4IBwB8/VYzeNWt+Yw9iIioqijVvaUqi1WrVqF58+Zo06ZNsdsEBQXB0tJS+3BycqrACqkyikhMx0fBYRACGOjjjP5tnKUuiYiIypCk4cba2hr6+vqIj4/XaY+Pj4e9vf1T983IyEBwcDA++OCDp243efJkpKSkaB8xMTEvXDdVXWnZeRj+81mkZefDu24NBPZoKnVJRERUxiQNN0qlEl5eXggJCdG2aTQahISEwNfX96n7btq0CTk5Oc+c0KxSqWBhYaHzoOpJoxEYv+ECbiVmwN7CCEsHtYLSoEoPXhIRUREknXMDABMmTEBAQAC8vb3Rpk0bLFy4EBkZGdqrp4YMGQJHR0cEBQXp7Ldq1Sr07NkTtWpxsTV6PotCbuDg1XgoDfTw42Av2JpzAjERkRxJHm769euHxMREfPXVV4iLi4Onpyf27dunnWQcHR0NPT3dv67Dw8Nx7Ngx/PHHH1KUTFXQ/stxWBRyAwAQ1Ks5PJyspC2IiIjKjeThBgDGjRuHcePGFfnckSNHCrU1atQIQohyrork4kZ8GiZsOA8AGNreBb296khbEBERlStOOCBZS8kqmECckauGr2stTOnWWOqSiIionDHckGypNQIf/RaG2/cz4WhljB8GtIShPr/liYjkjr/pSbbm/RGOP68nwsiwYAJxLTPVs3ciIqIqj+GGZGnXP3ex7MgtAMCc3i3QzNFS4oqIiKiiMNyQ7Fy5m4rPN/0DABj5sive8nSUuCIiIqpIDDckKw8zcjHil7PIylOjQwNrTOziLnVJRERUwRhuSDby1RqM++0c7jzMQt1aJljcvyX09RRSl0VERBWM4YZk45u913D85n2YKPWxYrA3rEyUUpdEREQSYLghWdgWdgf/dywSADC/rwca2ZtLXBEREUmF4YaqvIt3UjBpy0UAwIevuqFLs9oSV0RERFJiuKEqLTEtByN+OYucfA1ec7fFeL+GUpdEREQSY7ihKitfLTB23TncS8mGq40pFrzrCT1OICYiqvYYbqjK+nrXFZy+/QDmKgOsHOINCyNDqUsiIqJKgOGGqqwt5+5AoQAWvuuJ+jZmUpdDRESVBMMNVWkT/BritcZ2UpdB9EKyctVSl1AtZOTkS10CVRCGG6qyujS1x9hOblKXQVRq1+PT0Hf5STSfvh9nbj+QuhxZ0mgEDl6JR78fT6Jp4H6s+ztK6pKoAhhIXQBRSagM9NC1mT3Sc/Ixr68HJxBTlZSVq8b3h25g5V8RyNcIAMC1uDS0dqkpcWXykZ2nxrawWKw8GoGIxAxt++W7qRJWRRWF4YaqFIVCgWWDvKQug6jUjoQn4MsdlxDzIAsAoDTQQ26+RuKq5ONBRi5+ORmFn0/exv2MXACAucoADlbGCI9Pk7g6qigMN0REFSA+NRtf77qC3f/cAwA4WBph+ptNsS0sFnsvxUlcXdUXkZiOVccisTn0DnIehUVHK2MMbe+Cfq2dsPrYbYabaoThhoioHKk1Ar+eisK8/eFIy8mHvp4CQ9u5YPzrDWGqMsC2sFipS6yyhBA4G/UQK/+KwIGr8RAFZ/jQ3NESw192Rbdm9jDQ59TS6ojhhoionFyKTcHUbRdx4U4KAMDDyQqzezVDUwdLiSur2vLVGuy/HI+VRyNwPiZZ2/6auy2Gv+wKn3o1oVBwPl51xnBDRFTG0nPyMf+P61h7IhIaUTDnY2KXRhjgUxf6nARfahk5+dh4Ngarj0fqzFnq3coRH7zkCjdbrndFBRhuiIjKiBAC+y/HY8bvl3EvJRsA0L1FbXzVvQlsLYwkrq7qSkjNxtoTt/HrqSikZhesVVPDxBCDfV0wuG1d2JirJK6QKhuGGyKiMnDnYSam77yMg1cTAADONU0ws2czdGxoI3FlVVd4XBpWHo3AjvOxyFMXTKipZ22KD16qh96t6sBYqS9xhVRZMdwQEb2APLUGa45HYsGBG8jKU8NQX4ERL7viw1cbwMiQH74lJYTA8Zv3seJoBP66nqhtb+1SA8M6uMKvsR1P7dEzMdwQEZXSueiHmLL1Iq7FFVxi3MalJmb1aoYGduYSV1b15OZrsOufu1jxV4S2P/UUQNdmtTGsQz20dK4hcYVUlTDcEBGVUEpWHr7ddw3rT0dDCMDKxBBTujbGO151uGp2CaVk5eG309FYe/w24lIL5imZKPXR19sJ77evB+daJhJXSFURww0R0XMSQmDnhbuYuesqktJzAAC9W9XBlG7uqGXGSa0lcedhJtYcv43g09HIeHTjUFtzFQLauWCgjzOsTJQSV0hVGcMNEdFzuJ2UgS93XMLRG0kAgPo2pvhfz+bwrV9L4sqqln/uJGPl0UjsuXgP6kf31WpkZ45hHerhTU8HqAw4T4leHMMNEdFT5OSrseLPCCw+fBO5+RooDfTwYSc3jOjoyg/i56TRCBy6loCVRyPwd+S/dz9/yc0aw192xcsNrLnoHpUphhsiomKciriPqdsu4taju0p3aGCNmW81g4u1qcSVVQ1F3ZnbQE+BNz0c8EGHelyp+Tmk5+TDVKnP8FdCDDdERP/xICMXs/dcxebQOwAAazMVvuzeGG96OPBD5jkUd2fuAW2d8V47F9S2NJa4wsotT63BH5fj8eupKJyMuI/xfg3xsV8DqcuqUhhuiIgeEUJg09k7mL33KpIz86BQAAPaOGNiF3dYGhtKXV6l96w7c5sbsQ+fJjY5C7/9HY0NZ2OQmJajbb98N0XCqqomhhsiIgA34tMwddslnL5dMCfE3d4cs99ujlZcX+WpeGfuF6PRCPx5IxHrTkXh0LUEPJpjDWszFVytTbXfj1QyDDdEVK1l56mx+NANrPgrAnlqAWNDfYx/vQGGtq8HQ34oF4t35n4x99NzsPHsHaw/HaW9CSgA+LrWwqC2ddG5qR02nb3DcFNKDDdEVG39eT0RX26/hOgHmQAAv8a2mP5mU9SpwYXjiqPWCGwJvYPFh2/wztwlJITAmdsP8eupKOy7FIdcdcGpOwsjA7zj5YQBPs7svzLCcENE1U5Caja+3nUFu/65BwCwtzDC9Debwr+pHUcbiiGEQMjVBMzZdw03EtIB/Htn7iG+dWHNRQyLlZadh21hsVh3Khrh8Wnado86lhjYti56tHDgTUDLGMMNEVUbao3A+r+j8O2+cKTl5ENPAQxtXw/jX28IMxV/HRbnXPRDfLPnmvYUiZWJIca+4oZBbevyQ/kpLsWmYN3f0dhxPhaZj1ZhNjLUw1sejhjUti6a1+Gl8OWFP81EVC1cvpuCKdsu4cKj+SEedSwxq1dzNHPkB0xxbiWmY+6+cOy7HAcAUBnoYWj7ehj9Sn1ePVaM7Dw1dv1zD7+eitKZi+Rma4ZBPs7o1aoO+64CMNwQkaxl5ORjwYHrWHPiNtQaATOVASZ2aYSBPnWhz5tcFikhLRuLDt5A8JkYqDUCegrgHa86GP96Q65RU4yIxHSs/zsam0LvICUrDwBgqK+Af1N7DGpblxOsKxjDDRHJ1h+X4zB952XcTSm42/QbLWrjq+5NYGdhJHFllVN6Tj5W/HkLK49GIiuv4DSKX2NbfO7vjkb25hJXV/nkqTU4eCUev/4dheM372vbHa2MMcDHGX29nWBjzrlIUmC4ISLZuZuchcCdl3HgSjwAwKmmMWa+1QyvNLKVuLLKKTdfg99OR+P7kBvaFYU9nawwuas7fFx5Y9D/upeShd9OxyD4dDQSHi22p1AAnRrZYlBbZ3RsaMtRQYkx3BCRbOSrNVh74jbmH7iOzFw1DPQUGPGyKz58tQEnvhZBCIFd/9zDvD/CEXW/4HJ4V2tTfO7fCF2a2fM0yhM0GoGjN5Ow7lQUQq4laO9obm2mRL/WTni3tTOcanIJgcqC4YaIZCEhNRtj1p3D2aiHAIDWLjUwq1dzNLTj6ZSinLiVhG/2XsM/dwqW9rc2U+ETvwbo19qJixc+4UFGLjadjcH609HaAAgAPvVqYlDbuvBvag+lAfursmG4IaIqLzTqIUb/GoqEtByYGxlg2huN0cfLCXo8NVDI1Xup+GbvNfx5PREAYKrUx4iX62NYh3ow5eXwAApGtEKjChbb23Px38X2zI0M0LtVHQxq6ww3W4bmyozfyURUpa3/OxqBOy8hTy3Q0M4MKwZ7w8XaVOqyKp3Y5Cx890c4toXFQgjAQE+BgT7O+PC1BlyA75H0nPxHi+1F4Vrcv4vtNXe0xKC2zujh4QATJT82qwL+LxFRlZSTr8b0nVfw2+loAEC35vaY+44HRx/+IzkzF0sO38RPJ6OQ++hO3W+0qI3POzdiCHzk6r1U/HoqCtvDYpHxxGJ7PVo4YFDbuvBwspK2QCox/hYgoionPjUbo34NRVh0MhQK4HP/RhjdsT4nwD4hO0+NtSduY+nhm0jNzgdQcFPGSV3d+WGNgv7Zc7Fgsb1z0cnadlcbUwzyqYvererA0oSL7VVVDDdEVKWERj3AqF/PITEtBxZGBvi+f0te4v0EtUZgy7k7WHDgOu49Wt/H3d4cX3R1xysNbap9AIxPycbsPVex6WwMHmYWLLZnoFew2N7Ats7wda1V7ftIDhhuiKhKEEJg/eloTN95GXlqgUZ25lgxxAt1a/HUClDQP4fDEzBnb7j25owOlkb4tHMj9GzpyHVXHgm5loCQawkAChbb69/GCX1bO8HWnAs7ygnDDRFVejn5agTuuIzgMzEACuaMfNu7BefXPBIW/RDf7L2GvyMLbmxpaWyIsZ3qY4ivC4wMub4PAFgYF3yvKBRAx4Y2GORTF53cudieXPE3AxFVanEpBfNrzsckQ08BTOzijpEvu/LUAYDIpAzM3X8Ney4W3NhSaaCHoe1dMKajG+eL/Ef/Ns6oaapEK+caXGyvGmC4IaJK68ztBxj96zkkpefA0tgQi/u3xMsNbaQuS3KJaTlYFHIdwadjkK8RUCiAd1oV3NjSwYo3tiyKkaE+3vJ0lLoMqiAMN0RU6Qgh8OupKMz4/QryNQLu9uZYMdgbzrWq91/c6Tn5WPlXBFYejUDmo0uWX3W3xRddeGNLoicx3BBRpZKdp8aX2y9hU+gdAEAPDwfM6d28Wi+elqf+98aWSekFN7b0eHRjy7a8sSVRIdX3twURVTr3UrIw6pdQXLiTAj0FMKmrO4Z3qL7za4QQ2HMxDnP3X8PtR/c1qvfoxpZdeWNLomJJfrevJUuWwMXFBUZGRvDx8cHp06efun1ycjLGjh2L2rVrQ6VSoWHDhtizZ08FVUtE5eXviPvosfgYLtxJgZWJIX5+3wcjXq6+C/OdvHUfPZeewNj153D7fiaszZSY+VZT/DH+ZXRrXrva9gvR85B05GbDhg2YMGECli9fDh8fHyxcuBD+/v4IDw+HrW3hRblyc3Px+uuvw9bWFps3b4ajoyOioqJgZWVV8cUTUZkQQuDnk1GYuatgfk2T2hb4cbBXtb2i5VpcKubsvYbD4QU3tjRR6mPEy64Y3sGVl74TPSdJf1Lmz5+P4cOHY+jQoQCA5cuXY/fu3Vi9ejUmTZpUaPvVq1fjwYMHOHHiBAwNCy5zdHFxqciSiagMZeepMW37JWx+NL/mTQ8HzOndAsbK6rc2y73kLHy26QK2nLujvbFl/zbO+Oi1BrAx540tiUpCsnCTm5uL0NBQTJ48Wdump6cHPz8/nDx5ssh9du7cCV9fX4wdOxY7duyAjY0NBgwYgC+++AL6+tXvlyFRVXY3OQujfg3FP4/m10zp1hgfvFSv2p5uWXrklvbfbzSvjc/8G6Eeb2xJVCqShZukpCSo1WrY2dnptNvZ2eHatWtF7hMREYFDhw5h4MCB2LNnD27evIkxY8YgLy8PgYGBRe6Tk5ODnJwc7depqalldxBEVCqnIu5j7LpzuJ+RixomhlgyoBXauVlLXZYk9J5YIdenXk1M7tYYnryxJdELqVIncDUaDWxtbbFixQro6+vDy8sLsbGxmDt3brHhJigoCDNmzKjgSomoKEIIrD1xG//bfRVqjUBTh4L5NXVqVM/5NQAwyKcu8tUavNvaGa804o0ticqCZOHG2toa+vr6iI+P12mPj4+Hvb19kfvUrl0bhoaGOqegGjdujLi4OOTm5kKpVBbaZ/LkyZgwYYL269TUVDg5OZXRURDR88rOU2PKtovYei4WANDT0wFBb1fP+TVP8q1fC771uVYNUVmS7FJwpVIJLy8vhISEaNs0Gg1CQkLg6+tb5D7t27fHzZs3odFotG3Xr19H7dq1iww2AKBSqWBhYaHzIKKKFZuchXeWn8DWc7HQ11Pgq+5NsKCfZ7UPNkRUPiRd52bChAlYuXIlfvrpJ1y9ehWjR49GRkaG9uqpIUOG6Ew4Hj16NB48eICPP/4Y169fx+7duzF79myMHTtWqkMgomc4cSsJPRYfw6XYVNQ0VeKXD9rg/Wo8cZiIyp+kc2769euHxMREfPXVV4iLi4Onpyf27dunnWQcHR0NPb1/85eTkxP279+P8ePHo0WLFnB0dMTHH3+ML774QqpDIKJiCCGw+vhtzN5TML+mmaMFfhzsDUfe2JGIypnkE4rHjRuHcePGFfnckSNHCrX5+vri1KlT5VwVEb2IrNyC+TXbwgrm17zdyhGzezWHkSFPQxFR+ZM83BCRvMQ8yMSoX0Nx+W4q9PUUmPZGY7zXzoWnoYiowjDcEFGZOXEzCWPXn8PDzDzUMlViycBWvGs1EVU4hhsiemFCCKw6FonZe65CI4AWdSyxfJAXHDi/hogkwHBDRC8kK1eNL7b8g50X7gIAereqg1m9mnF+DRFJhuGGiEot5kEmRvwSiqv3UmGgp8BXPZpgcNu6nF9DRJJiuCGiUjl2IwnjfjuH5Mw8WJspsWRAK/hwfg0RVQIMN0RUIkIIrDwagW/2XoNGAB51LLF8sBdqW3J+DRFVDgw3RPTcMnPz8cWWi/j90fyaPl51MLMn59cQUeXCcENEzyX6fiZG/HIW1+LSYKCnQGCPJhjE+TVEVAkx3BDRM/11PREf/haGlKw8WJupsGxQK7R2qSl1WURERWK4IaKnWnviNvZcvAeNADydrLB8kBfsLY2kLouIqFgMN0T0VLv+uQcAeLe1E2a81RQqA86vIaLKjeGGiJ7KUF+B6W82xYA2zpxfQ0RVAsMNERWpa/PaCLkaj9m9msOb82uIqAphuCGiIn3RxR1fdHGXugwiohLTk7oAIiIiorLEcENERESywnBDREREssJwQ0RERLLCcENERESywnBDREREssJwQ0RERLLCcENERERl4kFGLjaH3kH0/UxJ6+AifkRERFRqGo3AsZtJ2HAmBn9ciUOeWqBjQxv89H4byWpiuCEiIqISu5uchU1n72Dj2RjEJmfpPJeWnSdRVQUYboiIiOi55OZrEHI1HsFnYvDXjUQIUdBuYWSAXi0dYWOuwrw/rktbJBhuiIiI6BluJqRhw5kYbD0Xi/sZudr2tq418W5rZ3RpZg8jQ338cTlOwir/xXBDREREhWTm5mP3P/ew4UwMzkY91LbbmKvQx6sO+no7wcXaVMIKi8dwQ0RERAAAIQT+uZOC4DMx+P3CXaTn5AMA9PUU6NTIFv1aO6FTIxsY6Ffui60ZboiIiKq55MxcbAuLxYYzMbgWl6Ztr1vLBH29nfCOVx3YWRhJWGHJMNwQERFVQxqNwKmI+wg+E4N9l+OQm68BACgN9NCtmT36tXaGT72a0NNTSFxpyTHcEBERVSNxKdnYHBqDDWdjEPPg30u4G9e2wLutndDT0xGWJoYSVvjiGG6IiIhkLk+twaFrCdh4JgaHwxOgeXQJt7nKAG96OuDd1s5o5mgBhaLqjdIUheGGiIhIpiKTMrDhTAw2h95BUnqOtr2NS030a+2Ebs1rw1ipL2GF5YPhhoiISEayctXYe+kegs/E4HTkA227tZkSvR9dwl3fxkzCCssfww0REZEMXIpNQfCZaOwIu4u0R5dw6ymAVxrZoq+3E15rbAvDSn4Jd1lhuCEiIqqiUjLzsONCwSXcl++matvr1DBGP28nvONdB7UtjSWsUBoMN0RERFWIEAJ/Rz7AhjMx2HPxHnIeX8Ktrwf/ZvZ4t7UTfF1rVclLuMsKww0REVEVkJCajc3n7mDjmRjcvp+pbW9kZ45+rZ3Qq6UjapgqJayw8mC4ISIiqsSiH2Ri+M9ncehaAtSPruE2VerjTU8H9GvtDI86lrK5hLusMNwQERFVYtfi0rS3RPCqWwP9Wjvhjea1YariR3hx2DNERESVUN1aJgCAmqZKvN3SEf1aO6GBnbnEVVUNDDdERESVUHs3a5yY9CpqmSmhMpDfQnvlieGGiIioknKwqn6XcZeF6rGaDxEREVUbDDdEREQkKww3REREJCsMN0RERCQrDDdEREQkKww3REREJCsMN0RERCQrDDdEREQkKww3REREJCsMN0RERCQrDDdEREQkKww3REREJCsMN0RERCQrlSLcLFmyBC4uLjAyMoKPjw9Onz5d7LZr166FQqHQeRgZGVVgtURERFSZSR5uNmzYgAkTJiAwMBDnzp2Dh4cH/P39kZCQUOw+FhYWuHfvnvYRFRVVgRUTERFRZSZ5uJk/fz6GDx+OoUOHokmTJli+fDlMTEywevXqYvdRKBSwt7fXPuzs7CqwYiIiIqrMJA03ubm5CA0NhZ+fn7ZNT08Pfn5+OHnyZLH7paeno27dunBycsJbb72Fy5cvF7ttTk4OUlNTdR5EREQkX5KGm6SkJKjV6kIjL3Z2doiLiytyn0aNGmH16tXYsWMHfv31V2g0GrRr1w537twpcvugoCBYWlpqH05OTmV+HERERAToKRRQGejBUF/aE0MKIYSQ6s3v3r0LR0dHnDhxAr6+vtr2iRMn4s8//8Tff//9zNfIy8tD48aN0b9/f8ycObPQ8zk5OcjJydF+nZqaCicnJ6SkpMDCwqJsDoSIiIjKVWpqKiwtLZ/r89uggmoqkrW1NfT19REfH6/THh8fD3t7++d6DUNDQ7Rs2RI3b94s8nmVSgWVSvXCtRIREVHVIOm4kVKphJeXF0JCQrRtGo0GISEhOiM5T6NWq3Hx4kXUrl27vMokIiKiKkTSkRsAmDBhAgICAuDt7Y02bdpg4cKFyMjIwNChQwEAQ4YMgaOjI4KCggAAX3/9Ndq2bQs3NzckJydj7ty5iIqKwrBhw6Q8DCIiIqokJA83/fr1Q2JiIr766ivExcXB09MT+/bt004yjo6Ohp7evwNMDx8+xPDhwxEXF4caNWrAy8sLJ06cQJMmTaQ6BCIiIqpEJJ1QLIWSTEgiIiKiyqEkn9+SL+JHREREVJYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIVhhuiIiISFYYboiIiEhWGG6IiIhIViS//UJFe7wgc2pqqsSVEBER0fN6/Ln9PDdWqHbhJi0tDQDg5OQkcSVERERUUmlpabC0tHzqNtXu3lIajQZ3796Fubk5FApFmb52amoqnJycEBMTw/tWlSP2c8VgP1cM9nPFYV9XjPLqZyEE0tLS4ODgoHND7aJUu5EbPT091KlTp1zfw8LCgj84FYD9XDHYzxWD/Vxx2NcVozz6+VkjNo9xQjERERHJCsMNERERyQrDTRlSqVQIDAyESqWSuhRZYz9XDPZzxWA/Vxz2dcWoDP1c7SYUExERkbxx5IaIiIhkheGGiIiIZIXhhoiIiGSF4YaIiIhkheGmhJYsWQIXFxcYGRnBx8cHp0+ffur2mzZtgru7O4yMjNC8eXPs2bOngiqt2krSzytXrkSHDh1Qo0YN1KhRA35+fs/8f6ECJf1+fiw4OBgKhQI9e/Ys3wJloqT9nJycjLFjx6J27dpQqVRo2LAhf3c8h5L288KFC9GoUSMYGxvDyckJ48ePR3Z2dgVVWzX99ddf6NGjBxwcHKBQKLB9+/Zn7nPkyBG0atUKKpUKbm5uWLt2bbnXCUHPLTg4WCiVSrF69Wpx+fJlMXz4cGFlZSXi4+OL3P748eNCX19ffPvtt+LKlSti2rRpwtDQUFy8eLGCK69aStrPAwYMEEuWLBFhYWHi6tWr4r333hOWlpbizp07FVx51VLSfn4sMjJSODo6ig4dOoi33nqrYoqtwkrazzk5OcLb21t069ZNHDt2TERGRoojR46I8+fPV3DlVUtJ+3ndunVCpVKJdevWicjISLF//35Ru3ZtMX78+AquvGrZs2ePmDp1qti6dasAILZt2/bU7SMiIoSJiYmYMGGCuHLlili8eLHQ19cX+/btK9c6GW5KoE2bNmLs2LHar9VqtXBwcBBBQUFFbt+3b1/xxhtv6LT5+PiIkSNHlmudVV1J+/m/8vPzhbm5ufjpp5/Kq0RZKE0/5+fni3bt2on/+7//EwEBAQw3z6Gk/bxs2TLh6uoqcnNzK6pEWShpP48dO1a8+uqrOm0TJkwQ7du3L9c65eR5ws3EiRNF06ZNddr69esn/P39y7EyIXha6jnl5uYiNDQUfn5+2jY9PT34+fnh5MmTRe5z8uRJne0BwN/fv9jtqXT9/F+ZmZnIy8tDzZo1y6vMKq+0/fz111/D1tYWH3zwQUWUWeWVpp937twJX19fjB07FnZ2dmjWrBlmz54NtVpdUWVXOaXp53bt2iE0NFR76ioiIgJ79uxBt27dKqTm6kKqz8Fqd+PM0kpKSoJarYadnZ1Ou52dHa5du1bkPnFxcUVuHxcXV251VnWl6ef/+uKLL+Dg4FDoB4r+VZp+PnbsGFatWoXz589XQIXyUJp+joiIwKFDhzBw4EDs2bMHN2/exJgxY5CXl4fAwMCKKLvKKU0/DxgwAElJSXjppZcghEB+fj5GjRqFKVOmVETJ1UZxn4OpqanIysqCsbFxubwvR25IVr755hsEBwdj27ZtMDIykroc2UhLS8PgwYOxcuVKWFtbS12OrGk0Gtja2mLFihXw8vJCv379MHXqVCxfvlzq0mTlyJEjmD17NpYuXYpz585h69at2L17N2bOnCl1aVQGOHLznKytraGvr4/4+Hid9vj4eNjb2xe5j729fYm2p9L182Pz5s3DN998g4MHD6JFixblWWaVV9J+vnXrFm7fvo0ePXpo2zQaDQDAwMAA4eHhqF+/fvkWXQWV5vu5du3aMDQ0hL6+vratcePGiIuLQ25uLpRKZbnWXBWVpp+//PJLDB48GMOGDQMANG/eHBkZGRgxYgSmTp0KPT3+7V8WivsctLCwKLdRG4AjN89NqVTCy8sLISEh2jaNRoOQkBD4+voWuY+vr6/O9gBw4MCBYren0vUzAHz77beYOXMm9u3bB29v74ootUoraT+7u7vj4sWLOH/+vPbx5ptvolOnTjh//jycnJwqsvwqozTfz+3bt8fNmze14REArl+/jtq1azPYFKM0/ZyZmVkowDwOlIK3XCwzkn0Olut0ZZkJDg4WKpVKrF27Vly5ckWMGDFCWFlZibi4OCGEEIMHDxaTJk3Sbn/8+HFhYGAg5s2bJ65evSoCAwN5KfhzKGk/f/PNN0KpVIrNmzeLe/fuaR9paWlSHUKVUNJ+/i9eLfV8StrP0dHRwtzcXIwbN06Eh4eLXbt2CVtbW/G///1PqkOoEkraz4GBgcLc3Fz89ttvIiIiQvzxxx+ifv36om/fvlIdQpWQlpYmwsLCRFhYmAAg5s+fL8LCwkRUVJQQQohJkyaJwYMHa7d/fCn4559/Lq5evSqWLFnCS8Ero8WLFwtnZ2ehVCpFmzZtxKlTp7TPdezYUQQEBOhsv3HjRtGwYUOhVCpF06ZNxe7duyu44qqpJP1ct25dAaDQIzAwsOILr2JK+v38JIab51fSfj5x4oTw8fERKpVKuLq6ilmzZon8/PwKrrrqKUk/5+XlienTp4v69esLIyMj4eTkJMaMGSMePnxY8YVXIYcPHy7y9+3jvg0ICBAdO3YstI+np6dQKpXC1dVVrFmzptzrVAjB8TciIiKSD865ISIiIllhuCEiIiJZYbghIiIiWWG4ISIiIllhuCEiIiJZYbghIiIiWWG4ISIiIllhuCEiAqBQKLB9+3YAwO3bt6FQKHgHdKIqiuGGiCT33nvvQaFQQKFQwNDQEPXq1cPEiRORnZ0tdWlEVAXxruBEVCl06dIFa9asQV5eHkJDQxEQEACFQoE5c+ZIXRoRVTEcuSGiSkGlUsHe3h5OTk7o2bMn/Pz8cODAAQAFd3gOCgpCvXr1YGxsDA8PD2zevFln/8uXL6N79+6wsLCAubk5OnTogFu3bgEAzpw5g9dffx3W1tawtLREx44dce7cuQo/RiKqGAw3RFTpXLp0CSdOnIBSqQQABAUF4eeff8by5ctx+fJljB8/HoMGDcKff/4JAIiNjcXLL78MlUqFQ4cOITQ0FO+//z7y8/MBAGlpaQgICMCxY8dw6tQpNGjQAN26dUNaWppkx0hE5YenpYioUti1axfMzMyQn5+PnJwc6Onp4YcffkBOTg5mz56NgwcPwtfXFwDg6uqKY8eO4ccff0THjh2xZMkSWFpaIjg4GIaGhgCAhg0bal/71Vdf1XmvFStWwMrKCn/++Se6d+9ecQdJRBWC4YaIKoVOnTph2bJlyMjIwIIFC2BgYIDevXvj8uXLyMzMxOuvv66zfW5uLlq2bAkAOH/+PDp06KANNv8VHx+PadOm4ciRI0hISIBarUZmZiaio6PL/biIqOIx3BBRpWBqago3NzcAwOrVq+Hh4YFVq1ahWbNmAIDdu3fD0dFRZx+VSgUAMDY2fuprBwQE4P79+1i0aBHq1q0LlUoFX19f5ObmlsOREJHUGG6IqNLR09PDlClTMGHCBFy/fh0qlQrR0dHo2LFjkdu3aNECP/30E/Ly8oocvTl+/DiWLl2Kbt26AQBiYmKQlJRUrsdARNLhhGIiqpT69OkDfX19/Pjjj/jss88wfvx4/PTTT7h16xbOnTuHxYsX46effgIAjBs3DqmpqXj33Xdx9uxZ3LhxA7/88gvCw8MBAA0aNMAvv/yCq1ev4u+//8bAgQOfOdpDRFUXR26IqFIyMDDAuHHj8O233yIyMhI2NjYICgpCREQErKys0KpVK0yZMgUAUKtWLRw6dAiff/45OnbsCH19fXh6eqJ9+/YAgFWrVmHEiBFo1aoVnJycMHv2bHz22WdSHh4RlSOFEEJIXQQRERFRWeFpKSIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikhWGGyIiIpIVhhsiIiKSFYYbIiIikpX/B9HVnlmJAndCAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Area under the Precision-Recall curve: 0.72\n"
     ]
    }
   ],
   "source": [
    "import pandas as pd\n",
    "from sklearn.metrics import precision_recall_curve, auc\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "\n",
    "ranks = np.arange(1, 21)\n",
    "labels = ['R', 'R', 'NR', 'R', 'R', 'NR','NR', 'R', 'R','NR',\n",
    "          'R','R','NR','R','NR','NR','NR','R', 'NR', 'NR',]\n",
    "\n",
    "df = pd.DataFrame({'Rank': ranks, 'Label': labels})\n",
    "\n",
    "# Convert labels to binary format: R -> 1, NR -> 0\n",
    "df['binary_label'] = df['Label'].map({'R': 1, 'NR': 0})\n",
    "\n",
    "# Create predicted scores based on the rank\n",
    "# Lower rank means higher relevance\n",
    "df['score'] = -df['Rank']\n",
    "\n",
    "# Compute Precision-Recall curve\n",
    "precision, recall, thresholds = precision_recall_curve(df['binary_label'], df['score'])\n",
    "\n",
    "# Compute AUC for the Precision-Recall curve\n",
    "pr_auc = auc(recall, precision)\n",
    "\n",
    "\n",
    "plt.figure()\n",
    "plt.plot(recall, precision, label=f'PR curve (area = {pr_auc:.2f})')\n",
    "plt.xlabel('Recall')\n",
    "plt.ylabel('Precision')\n",
    "plt.title('Precision-Recall curve')\n",
    "plt.legend(loc=\"best\")\n",
    "plt.savefig('precision_recall_curve.jpg', format='jpeg', bbox_inches='tight')\n",
    "plt.show()\n",
    "\n",
    "# Print the AUC\n",
    "print(f'Area under the Precision-Recall curve: {pr_auc:.2f}')\n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "91d6f2cf-e4d6-4d1a-918c-41c661ee1757",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Rank</th>\n",
       "      <th>Label</th>\n",
       "      <th>binary_label</th>\n",
       "      <th>precision</th>\n",
       "      <th>recall</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>R</td>\n",
       "      <td>1</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>R</td>\n",
       "      <td>1</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>NR</td>\n",
       "      <td>0</td>\n",
       "      <td>0.666667</td>\n",
       "      <td>0.4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>R</td>\n",
       "      <td>1</td>\n",
       "      <td>0.750000</td>\n",
       "      <td>0.6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5</td>\n",
       "      <td>R</td>\n",
       "      <td>1</td>\n",
       "      <td>0.800000</td>\n",
       "      <td>0.8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>6</td>\n",
       "      <td>NR</td>\n",
       "      <td>0</td>\n",
       "      <td>0.666667</td>\n",
       "      <td>0.8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>7</td>\n",
       "      <td>NR</td>\n",
       "      <td>0</td>\n",
       "      <td>0.571429</td>\n",
       "      <td>0.8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>8</td>\n",
       "      <td>R</td>\n",
       "      <td>1</td>\n",
       "      <td>0.625000</td>\n",
       "      <td>1.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>9</td>\n",
       "      <td>NR</td>\n",
       "      <td>0</td>\n",
       "      <td>0.555556</td>\n",
       "      <td>1.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>10</td>\n",
       "      <td>NR</td>\n",
       "      <td>0</td>\n",
       "      <td>0.500000</td>\n",
       "      <td>1.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Rank Label  binary_label  precision  recall\n",
       "0     1     R             1   1.000000     0.2\n",
       "1     2     R             1   1.000000     0.4\n",
       "2     3    NR             0   0.666667     0.4\n",
       "3     4     R             1   0.750000     0.6\n",
       "4     5     R             1   0.800000     0.8\n",
       "5     6    NR             0   0.666667     0.8\n",
       "6     7    NR             0   0.571429     0.8\n",
       "7     8     R             1   0.625000     1.0\n",
       "8     9    NR             0   0.555556     1.0\n",
       "9    10    NR             0   0.500000     1.0"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Calculate precision and recall for each rank\n",
    "ranks = np.arange(1, 11)\n",
    "labels = ['R', 'R', 'NR', 'R', 'R', 'NR','NR', 'R', 'NR','NR']\n",
    "\n",
    "df = pd.DataFrame({'Rank': ranks, 'Label': labels})\n",
    "\n",
    "# Convert labels to binary format: R -> 1, NR -> 0\n",
    "df['binary_label'] = df['Label'].map({'R': 1, 'NR': 0})\n",
    "\n",
    "\n",
    "precisions = []\n",
    "recalls = []\n",
    "for i in range(1, len(df) + 1):\n",
    "    sub_df = df.iloc[:i]\n",
    "    tp = sum(sub_df['binary_label'])\n",
    "    fp = i - tp\n",
    "    fn = sum(df['binary_label']) - tp\n",
    "    \n",
    "    precision = tp / (tp + fp) if (tp + fp) > 0 else 0\n",
    "    recall = tp / (tp + fn) if (tp + fn) > 0 else 0\n",
    "    \n",
    "    precisions.append(precision)\n",
    "    recalls.append(recall)\n",
    "\n",
    "df['precision'] = precisions\n",
    "df['recall'] = recalls\n",
    "df"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "aed5db98-255b-4cc3-a6ac-e3cd49b2514d",
   "metadata": {},
   "source": [
    "# A RAG pipeline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "693109f0-758d-408a-8cea-76ca97b3a4c0",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/var/tmp/ipykernel_10788/1841053763.py:2: DtypeWarning: Columns (10) have mixed types. Specify dtype option on import or set low_memory=False.\n",
      "  df = pd.read_csv('movies_metadata.csv')\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>adult</th>\n",
       "      <th>belongs_to_collection</th>\n",
       "      <th>budget</th>\n",
       "      <th>genres</th>\n",
       "      <th>homepage</th>\n",
       "      <th>id</th>\n",
       "      <th>imdb_id</th>\n",
       "      <th>original_language</th>\n",
       "      <th>original_title</th>\n",
       "      <th>overview</th>\n",
       "      <th>...</th>\n",
       "      <th>release_date</th>\n",
       "      <th>revenue</th>\n",
       "      <th>runtime</th>\n",
       "      <th>spoken_languages</th>\n",
       "      <th>status</th>\n",
       "      <th>tagline</th>\n",
       "      <th>title</th>\n",
       "      <th>video</th>\n",
       "      <th>vote_average</th>\n",
       "      <th>vote_count</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>False</td>\n",
       "      <td>{'id': 10194, 'name': 'Toy Story Collection', ...</td>\n",
       "      <td>30000000</td>\n",
       "      <td>[{'id': 16, 'name': 'Animation'}, {'id': 35, '...</td>\n",
       "      <td>http://toystory.disney.com/toy-story</td>\n",
       "      <td>862</td>\n",
       "      <td>tt0114709</td>\n",
       "      <td>en</td>\n",
       "      <td>Toy Story</td>\n",
       "      <td>Led by Woody, Andy's toys live happily in his ...</td>\n",
       "      <td>...</td>\n",
       "      <td>1995-10-30</td>\n",
       "      <td>373554033.0</td>\n",
       "      <td>81.0</td>\n",
       "      <td>[{'iso_639_1': 'en', 'name': 'English'}]</td>\n",
       "      <td>Released</td>\n",
       "      <td>NaN</td>\n",
       "      <td>Toy Story</td>\n",
       "      <td>False</td>\n",
       "      <td>7.7</td>\n",
       "      <td>5415.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>False</td>\n",
       "      <td>NaN</td>\n",
       "      <td>65000000</td>\n",
       "      <td>[{'id': 12, 'name': 'Adventure'}, {'id': 14, '...</td>\n",
       "      <td>NaN</td>\n",
       "      <td>8844</td>\n",
       "      <td>tt0113497</td>\n",
       "      <td>en</td>\n",
       "      <td>Jumanji</td>\n",
       "      <td>When siblings Judy and Peter discover an encha...</td>\n",
       "      <td>...</td>\n",
       "      <td>1995-12-15</td>\n",
       "      <td>262797249.0</td>\n",
       "      <td>104.0</td>\n",
       "      <td>[{'iso_639_1': 'en', 'name': 'English'}, {'iso...</td>\n",
       "      <td>Released</td>\n",
       "      <td>Roll the dice and unleash the excitement!</td>\n",
       "      <td>Jumanji</td>\n",
       "      <td>False</td>\n",
       "      <td>6.9</td>\n",
       "      <td>2413.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>False</td>\n",
       "      <td>{'id': 119050, 'name': 'Grumpy Old Men Collect...</td>\n",
       "      <td>0</td>\n",
       "      <td>[{'id': 10749, 'name': 'Romance'}, {'id': 35, ...</td>\n",
       "      <td>NaN</td>\n",
       "      <td>15602</td>\n",
       "      <td>tt0113228</td>\n",
       "      <td>en</td>\n",
       "      <td>Grumpier Old Men</td>\n",
       "      <td>A family wedding reignites the ancient feud be...</td>\n",
       "      <td>...</td>\n",
       "      <td>1995-12-22</td>\n",
       "      <td>0.0</td>\n",
       "      <td>101.0</td>\n",
       "      <td>[{'iso_639_1': 'en', 'name': 'English'}]</td>\n",
       "      <td>Released</td>\n",
       "      <td>Still Yelling. Still Fighting. Still Ready for...</td>\n",
       "      <td>Grumpier Old Men</td>\n",
       "      <td>False</td>\n",
       "      <td>6.5</td>\n",
       "      <td>92.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>False</td>\n",
       "      <td>NaN</td>\n",
       "      <td>16000000</td>\n",
       "      <td>[{'id': 35, 'name': 'Comedy'}, {'id': 18, 'nam...</td>\n",
       "      <td>NaN</td>\n",
       "      <td>31357</td>\n",
       "      <td>tt0114885</td>\n",
       "      <td>en</td>\n",
       "      <td>Waiting to Exhale</td>\n",
       "      <td>Cheated on, mistreated and stepped on, the wom...</td>\n",
       "      <td>...</td>\n",
       "      <td>1995-12-22</td>\n",
       "      <td>81452156.0</td>\n",
       "      <td>127.0</td>\n",
       "      <td>[{'iso_639_1': 'en', 'name': 'English'}]</td>\n",
       "      <td>Released</td>\n",
       "      <td>Friends are the people who let you be yourself...</td>\n",
       "      <td>Waiting to Exhale</td>\n",
       "      <td>False</td>\n",
       "      <td>6.1</td>\n",
       "      <td>34.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>False</td>\n",
       "      <td>{'id': 96871, 'name': 'Father of the Bride Col...</td>\n",
       "      <td>0</td>\n",
       "      <td>[{'id': 35, 'name': 'Comedy'}]</td>\n",
       "      <td>NaN</td>\n",
       "      <td>11862</td>\n",
       "      <td>tt0113041</td>\n",
       "      <td>en</td>\n",
       "      <td>Father of the Bride Part II</td>\n",
       "      <td>Just when George Banks has recovered from his ...</td>\n",
       "      <td>...</td>\n",
       "      <td>1995-02-10</td>\n",
       "      <td>76578911.0</td>\n",
       "      <td>106.0</td>\n",
       "      <td>[{'iso_639_1': 'en', 'name': 'English'}]</td>\n",
       "      <td>Released</td>\n",
       "      <td>Just When His World Is Back To Normal... He's ...</td>\n",
       "      <td>Father of the Bride Part II</td>\n",
       "      <td>False</td>\n",
       "      <td>5.7</td>\n",
       "      <td>173.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 24 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "   adult                              belongs_to_collection    budget  \\\n",
       "0  False  {'id': 10194, 'name': 'Toy Story Collection', ...  30000000   \n",
       "1  False                                                NaN  65000000   \n",
       "2  False  {'id': 119050, 'name': 'Grumpy Old Men Collect...         0   \n",
       "3  False                                                NaN  16000000   \n",
       "4  False  {'id': 96871, 'name': 'Father of the Bride Col...         0   \n",
       "\n",
       "                                              genres  \\\n",
       "0  [{'id': 16, 'name': 'Animation'}, {'id': 35, '...   \n",
       "1  [{'id': 12, 'name': 'Adventure'}, {'id': 14, '...   \n",
       "2  [{'id': 10749, 'name': 'Romance'}, {'id': 35, ...   \n",
       "3  [{'id': 35, 'name': 'Comedy'}, {'id': 18, 'nam...   \n",
       "4                     [{'id': 35, 'name': 'Comedy'}]   \n",
       "\n",
       "                               homepage     id    imdb_id original_language  \\\n",
       "0  http://toystory.disney.com/toy-story    862  tt0114709                en   \n",
       "1                                   NaN   8844  tt0113497                en   \n",
       "2                                   NaN  15602  tt0113228                en   \n",
       "3                                   NaN  31357  tt0114885                en   \n",
       "4                                   NaN  11862  tt0113041                en   \n",
       "\n",
       "                original_title  \\\n",
       "0                    Toy Story   \n",
       "1                      Jumanji   \n",
       "2             Grumpier Old Men   \n",
       "3            Waiting to Exhale   \n",
       "4  Father of the Bride Part II   \n",
       "\n",
       "                                            overview  ... release_date  \\\n",
       "0  Led by Woody, Andy's toys live happily in his ...  ...   1995-10-30   \n",
       "1  When siblings Judy and Peter discover an encha...  ...   1995-12-15   \n",
       "2  A family wedding reignites the ancient feud be...  ...   1995-12-22   \n",
       "3  Cheated on, mistreated and stepped on, the wom...  ...   1995-12-22   \n",
       "4  Just when George Banks has recovered from his ...  ...   1995-02-10   \n",
       "\n",
       "       revenue runtime                                   spoken_languages  \\\n",
       "0  373554033.0    81.0           [{'iso_639_1': 'en', 'name': 'English'}]   \n",
       "1  262797249.0   104.0  [{'iso_639_1': 'en', 'name': 'English'}, {'iso...   \n",
       "2          0.0   101.0           [{'iso_639_1': 'en', 'name': 'English'}]   \n",
       "3   81452156.0   127.0           [{'iso_639_1': 'en', 'name': 'English'}]   \n",
       "4   76578911.0   106.0           [{'iso_639_1': 'en', 'name': 'English'}]   \n",
       "\n",
       "     status                                            tagline  \\\n",
       "0  Released                                                NaN   \n",
       "1  Released          Roll the dice and unleash the excitement!   \n",
       "2  Released  Still Yelling. Still Fighting. Still Ready for...   \n",
       "3  Released  Friends are the people who let you be yourself...   \n",
       "4  Released  Just When His World Is Back To Normal... He's ...   \n",
       "\n",
       "                         title  video vote_average vote_count  \n",
       "0                    Toy Story  False          7.7     5415.0  \n",
       "1                      Jumanji  False          6.9     2413.0  \n",
       "2             Grumpier Old Men  False          6.5       92.0  \n",
       "3            Waiting to Exhale  False          6.1       34.0  \n",
       "4  Father of the Bride Part II  False          5.7      173.0  \n",
       "\n",
       "[5 rows x 24 columns]"
      ]
     },
     "execution_count": 1,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import pandas as pd\n",
    "df = pd.read_csv('movies_metadata.csv')\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "68948320-56bd-45e0-858d-dea5833cedc4",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/opt/conda/lib/python3.10/site-packages/sentence_transformers/cross_encoder/CrossEncoder.py:11: TqdmExperimentalWarning: Using `tqdm.autonotebook.tqdm` in notebook mode. Use `tqdm.tqdm` instead to force console mode (e.g. in jupyter console)\n",
      "  from tqdm.autonotebook import tqdm, trange\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Data successfully stored in ChromaDB.\n"
     ]
    }
   ],
   "source": [
    "\n",
    "import pandas as pd\n",
    "from sentence_transformers import SentenceTransformer\n",
    "from langchain.text_splitter import NLTKTextSplitter\n",
    "import chromadb\n",
    "\n",
    "df = df[['original_title', 'overview']]\n",
    "\n",
    "# Step 1: Chunk the Overview Column using NLTKTextSplitter\n",
    "text_splitter = NLTKTextSplitter(chunk_size=1500)\n",
    "\n",
    "def split_overview(overview):\n",
    "    if pd.isna(overview):\n",
    "        return []\n",
    "    return text_splitter.split_text(str(overview))\n",
    "\n",
    "df['chunks'] = df['overview'].apply(split_overview)\n",
    "\n",
    "# Flatten the dataframe for easier processing\n",
    "chunked_df = df.explode('chunks').reset_index(drop=True)\n",
    "\n",
    "# Step 2: Embed with a SentenceTransformer Encoder\n",
    "embedder = SentenceTransformer('all-MiniLM-L6-v2')  # You can choose another model\n",
    "\n",
    "# Make sure all chunks are strings and not empty\n",
    "def encode_chunk(chunk):\n",
    "    if not isinstance(chunk, str) or chunk.strip() == \"\":\n",
    "        return None\n",
    "    return embedder.encode(chunk).tolist()\n",
    "\n",
    "chunked_df['embeddings'] = chunked_df['chunks'].apply(encode_chunk)\n",
    "\n",
    "# Drop rows where 'embeddings' is None\n",
    "chunked_df.dropna(subset=['embeddings'], inplace=True)\n",
    "\n",
    "# Step 3: Store in ChromaDB\n",
    "# Initialize ChromaDB client and collection\n",
    "client = chromadb.Client()\n",
    "collection = client.create_collection(name='movies')\n",
    "\n",
    "# Insert data into ChromaDB\n",
    "for idx, row in chunked_df.iterrows():\n",
    "    collection.add(\n",
    "        ids=[str(idx)],\n",
    "        embeddings=[row['embeddings']],\n",
    "        metadatas=[{\n",
    "            'original_title': row['original_title'],\n",
    "            'chunk': row['chunks']\n",
    "        }]\n",
    "    )\n",
    "\n",
    "print(\"Data successfully stored in ChromaDB.\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "8248eeea-d270-4c67-951e-edff50b55fea",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "0a66051778de45fe976bfaf1cb786b9f",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Loading checkpoint shards:   0%|          | 0/2 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Retrieved Chunks: ['In DISASTER MOVIE, the filmmaking team behind the hits \"Scary Movie,\" \"Date Movie,\" \"Epic Movie\" and \"Meet The Spartans\" this time puts its unique, inimitable stamp on one of the biggest and most bloated movie genres of all time -- the disaster film.', 'The film talks about a family that weathers all sorts of disasters and keeps going in spite of it all.\\n\\nIt is noted for its wonderful assortment of oddball characters.', 'Silent comedy about a poor country bumpkin who goes to Hollywood to make good.', \"There are some movies that are so bad they're good.\\n\\nAnd there are some movies that are so bad- that they're just bad...\", 'A funny musical comedy about an adventures of children and adults in a summer camp.']\n",
      "Retrieved Titles: ['Disaster Movie', 'The Hotel New Hampshire', 'The Movies', 'The 50 Worst Movies Ever Made', 'Завтрак на траве']\n"
     ]
    }
   ],
   "source": [
    "import transformers\n",
    "from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline\n",
    "from chromadb import Client\n",
    "from sentence_transformers import SentenceTransformer\n",
    "import chromadb\n",
    "import torch\n",
    "\n",
    "# Load the SentenceTransformer model for encoding queries\n",
    "sentence_model = SentenceTransformer('all-MiniLM-L6-v2')  # Use the same model as for embedding documents\n",
    "\n",
    "# Load the text generation model and tokenizer\n",
    "tokenizer = AutoTokenizer.from_pretrained(\"mistralai/Mistral-7B-Instruct-v0.1\")\n",
    "model = AutoModelForCausalLM.from_pretrained(\n",
    "    \"mistralai/Mistral-7B-Instruct-v0.1\",\n",
    "    device_map='auto' # load it in the current GPU\n",
    ")\n",
    "text_generation_pipeline = pipeline(\n",
    "    model=model,\n",
    "    tokenizer=tokenizer,\n",
    "    task=\"text-generation\",\n",
    "    return_full_text=True,\n",
    "    max_new_tokens=800\n",
    ")\n",
    "\n",
    "\n",
    "# Function to retrieve top_k documents from ChromaDB\n",
    "def retrieve_documents(query, collection, top_k=5):\n",
    "    # Embed the query using the SentenceTransformer model\n",
    "    query_embedding = sentence_model.encode(query).tolist()\n",
    "    \n",
    "    # Search for top_k similar documents in the collection\n",
    "    results = collection.query(\n",
    "        query_embeddings=[query_embedding],\n",
    "        n_results=top_k\n",
    "    )\n",
    "    \n",
    "    if not results['documents']:\n",
    "        print(\"No results found for the query.\")\n",
    "        return [], []\n",
    "    \n",
    "    # Extract chunks and titles from the results\n",
    "    chunks = []\n",
    "    titles = []\n",
    "    for document in results['metadatas'][0]:\n",
    "        chunks.append(document['chunk'])\n",
    "        titles.append(document['original_title'])\n",
    "    \n",
    "    return chunks, titles\n",
    "\n",
    "# Function to generate answer based on retrieved chunks and titles\n",
    "def generate_answer(query, chunks, titles, text_generation_pipeline):\n",
    "    # Prepare the context from chunks and titles\n",
    "    context = \"\\n\\n\".join([f\"Title: {title}\\nChunk: {chunk}\" for title, chunk in zip(titles, chunks)])\n",
    "    \n",
    "    # Prepare the prompt\n",
    "    prompt = f\"\"\"[INST]\n",
    "    Instruction: You're an expert in movie suggestions. Your task is to analyze carefully the context and come up with an exhaustive answer to the following question:\n",
    "    {query}\n",
    "    \n",
    "    Here is the context to help you:\n",
    "\n",
    "    {context}\n",
    "\n",
    "    [/INST]\"\"\"\n",
    "    \n",
    "    # Generate the answer using the model\n",
    "    generated_text = text_generation_pipeline(prompt)[0]['generated_text']\n",
    "    \n",
    "    return generated_text\n",
    "\n",
    "# Example usage\n",
    "client = chromadb.Client()\n",
    "collection = client.get_collection(name='movies')\n",
    "\n",
    "query = \"What are some good movies to watch on a rainy day?\"\n",
    "top_k = 5\n",
    "\n",
    "# Retrieve documents\n",
    "chunks, titles = retrieve_documents(query, collection, top_k)\n",
    "print(f\"Retrieved Chunks: {chunks}\")\n",
    "print(f\"Retrieved Titles: {titles}\")\n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "cc041f27-92f2-4414-a4f1-90c6eff7b2d4",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[INST]\n",
      "    Instruction: You're an expert in movie suggestions. Your task is to analyze carefully the context and come up with an exhaustive answer to the following question:\n",
      "    What are some good movies to watch on a rainy day?\n",
      "    \n",
      "    Here is the context to help you:\n",
      "\n",
      "    Title: Disaster Movie\n",
      "Chunk: In DISASTER MOVIE, the filmmaking team behind the hits \"Scary Movie,\" \"Date Movie,\" \"Epic Movie\" and \"Meet The Spartans\" this time puts its unique, inimitable stamp on one of the biggest and most bloated movie genres of all time -- the disaster film.\n",
      "\n",
      "Title: The Hotel New Hampshire\n",
      "Chunk: The film talks about a family that weathers all sorts of disasters and keeps going in spite of it all.\n",
      "\n",
      "It is noted for its wonderful assortment of oddball characters.\n",
      "\n",
      "Title: The Movies\n",
      "Chunk: Silent comedy about a poor country bumpkin who goes to Hollywood to make good.\n",
      "\n",
      "Title: The 50 Worst Movies Ever Made\n",
      "Chunk: There are some movies that are so bad they're good.\n",
      "\n",
      "And there are some movies that are so bad- that they're just bad...\n",
      "\n",
      "Title: Завтрак на траве\n",
      "Chunk: A funny musical comedy about an adventures of children and adults in a summer camp.\n",
      "\n",
      "    [/INST] Based on the given context, here are some good movies to watch on a rainy day:\n",
      "\n",
      "1. Disaster Movie - This movie is a parody of the disaster film genre and is sure to provide some laughs on a rainy day.\n",
      "2. The Hotel New Hampshire - This movie is about a family that weathers all sorts of disasters and keeps going in spite of it all. It's a heartwarming story that is sure to inspire and uplift.\n",
      "3. The Movies - This is a silent comedy about a poor country bumpkin who goes to Hollywood to make good. It's a classic movie that is sure to provide some laughs and entertainment.\n",
      "4. The 50 Worst Movies Ever Made - While not necessarily a good movie, this documentary is sure to provide some entertainment and amusement as it takes a look at some of the worst movies ever made.\n",
      "5. Завтрак на траве - This is a funny musical comedy about an adventures of children and adults in a summer camp. It's a light-hearted movie that is sure to provide some laughs and entertainment on a rainy day.\n"
     ]
    }
   ],
   "source": [
    "# Generate answer\n",
    "if chunks and titles:\n",
    "    answer = generate_answer(query, chunks, titles, text_generation_pipeline)\n",
    "    print(answer)\n",
    "else:\n",
    "    print(\"No relevant documents found to generate an answer.\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "121743b5-2aa6-4546-9c2c-1fb6bba64640",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "environment": {
   "kernel": "conda-base-py",
   "name": "workbench-notebooks.m123",
   "type": "gcloud",
   "uri": "us-docker.pkg.dev/deeplearning-platform-release/gcr.io/workbench-notebooks:m123"
  },
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "conda-base-py"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.14"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
